canonical: https://jentic.com/apis/microsoft.com/microsoft-todo-api

# Microsoft Azure Microsoft To Do API (Graph)

Jentic publishes the only available OpenAPI specification for Microsoft To Do API (Graph), keeping it validated and agent-ready. The Microsoft To Do API exposes task management capabilities via Microsoft Graph, letting applications create and organise task lists, add tasks with due dates and reminders, attach checklist items, and link external resources. It uses OAuth 2.0 bearer tokens scoped to the signed-in user's mailbox and supports the same task data that surfaces in Microsoft To Do, Outlook Tasks, and Planner integration scenarios. The 14 endpoints cover full lifecycle operations on lists, tasks, checklist items, and linked resources.

## For AI agents

Create and manage Microsoft To Do task lists, tasks, checklist items, and linked resources for the signed-in user via Microsoft Graph.

## Scope

Does not handle calendar events, email, or team/shared project tracking - use for managing the signed-in user's personal Microsoft To Do tasks only.

## Capabilities

- Create and organise personal task lists for the signed-in user
- Add tasks with due dates, reminders, and importance levels to a specific list
- Break tasks down into checklist items for granular subtask tracking
- Attach linked resources such as Outlook emails or external URLs to a task
- Update task status and completion state to keep workflow agents in sync
- Retrieve all tasks across a list to feed daily-standup or planning agents
- Delete obsolete tasks and lists to keep the user's To Do workspace tidy

## Use cases

### Personal Productivity Sync

Keep an agent's task backlog in lockstep with the user's Microsoft To Do account so reminders, due dates, and completion state stay consistent across devices. The API surfaces the same tasks shown in Outlook Tasks and the To Do mobile app, so changes made by an agent are reflected wherever the user already works.

Example prompt: Create a task titled 'Submit expense report' in the user's default To Do list with a due date of next Friday and importance set to high.

### Meeting Follow-Up Capture

After a meeting, an agent extracts action items from notes or a transcript and writes them as tasks into a dedicated To Do list, optionally attaching the meeting recording or notes as linked resources. The user sees the action items appear in Microsoft To Do without copying anything by hand.

Example prompt: Create a task list called 'Q3 Planning Follow-ups' and add 5 tasks parsed from a meeting transcript, attaching the OneDrive transcript URL as a linked resource on each.

### Checklist Decomposition

When a user asks an agent to break a complex task down into smaller steps, the agent posts a parent task and then creates checklist items beneath it. The user can tick items off in the To Do app and the agent can read remaining items back later.

Example prompt: Create a task 'Prepare onboarding pack' and add five checklist items: write welcome email, prepare laptop, schedule intro calls, share docs, send swag.

### Agent-Driven Task Management via Jentic

Through Jentic, an AI agent discovers To Do operations by intent, loads the input schema for the chosen endpoint, and executes the call using a scoped Microsoft Graph token held in your Jentic One instance. The agent never sees the raw token and can be wired into any framework that supports MCP or the Jentic SDK.

Example prompt: Use Jentic search for 'create a task in microsoft to do', load the schema for POST /me/todo/lists/{todoTaskListId}/tasks, and execute it with a generated task title and due date.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /me/todo/lists | List all task lists |
| POST | /me/todo/lists | Create a task list |
| GET | /me/todo/lists/{todoTaskListId}/tasks | List tasks in a list |
| POST | /me/todo/lists/{todoTaskListId}/tasks | Create a task |
| PATCH | /me/todo/lists/{todoTaskListId} | Update a task list |
| DELETE | /me/todo/lists/{todoTaskListId} | Delete a task list |

## Key resources

- **Task Lists** — Create, read, update, and delete the user's To Do task lists
- **Tasks** — Create, read, update, and delete tasks within a list, including due dates, reminders, and status
- **Checklist Items** — Manage subtasks beneath a parent task
- **Linked Resources** — Attach external URLs or Microsoft 365 items as linked resources on a task

## Why Jentic

- **Setup:** Wiring the Microsoft To Do API by hand means running the Microsoft Graph OAuth 2.0 flow, managing the signed-in user's consent, and refreshing bearer tokens for the Graph host yourself. Through Jentic you install once, import the Microsoft To Do API from the API Directory, store the credentials once, and your agent calls it.
- **Permission scoping:** Graph puts the task list in the URL path (/me/todo/lists/{todoTaskListId}/tasks), so a rule can pin your agent to one task list. You choose the operations it may call, so deleting or renaming a list is not included unless you add it.
- **Credential handling:** Your Microsoft Graph bearer and refresh tokens are stored once, encrypted, by your own Jentic One instance and injected into the Authorization header at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create a task in Microsoft To Do' or 'list my task lists', and Jentic returns the matching Graph operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Google Tasks API** — Google's equivalent personal task list API across the Google Workspace user base.
- **Asana API** — Team and project task management for handing off personal action items into shared projects.
- **ClickUp API** — Cross-functional task and project platform with richer hierarchy than personal task lists.

## FAQ

### Why is there no official OpenAPI spec for Microsoft To Do API (Graph)?

Microsoft Azure does not publish a dedicated OpenAPI specification for the To Do surface of Microsoft Graph. Jentic generates and maintains this spec so that AI agents and developers can call Microsoft To Do API (Graph) via structured tooling. It is validated against the live Microsoft Graph API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Microsoft To Do API use?

The API uses OAuth 2.0 bearer tokens issued by Microsoft identity platform, sent in the standard Authorization header as configured by the bearerAuth scheme. The token must be granted Tasks.ReadWrite delegated permission for the signed-in user. Through Jentic, the bearer token is held in the encrypted vault and never exposed to the agent's context.

### Can I create checklist items under a task with this API?

Yes. After creating a task with POST /me/todo/lists/{todoTaskListId}/tasks, you can add granular subtasks using the checklist items endpoints under that task. The same data appears as the in-app checklist beneath the task in Microsoft To Do.

### What are the rate limits for the Microsoft To Do API?

Microsoft Graph applies per-app and per-user throttling limits documented under the Graph throttling guidance. To Do operations fall under the Outlook service limits, typically 10,000 requests per 10 minutes per app per mailbox. Expect a 429 response with a Retry-After header when limits are hit.

### How do I create a task in Microsoft To Do through Jentic?

Run pip install jentic, then use the Python SDK to search for 'create a task in microsoft to do', load the schema for POST /me/todo/lists/{todoTaskListId}/tasks, and execute with the list id and task body. Jentic injects the scoped Graph token automatically.

### Does this API cover team or shared task lists?

No. The endpoints in this spec target /me/todo, which is the signed-in user's personal To Do data. For team task management on the same Graph, use Microsoft Planner or Microsoft Teams APIs instead.

### Can I limit what my agent is allowed to do with the Microsoft To Do API?

Yes. Because you run Jentic One yourself, your own rules decide which Microsoft Graph To Do operations the agent may call, so you can allow it to create and read tasks while withholding operations like DELETE /me/todo/lists/{todoTaskListId} that rename or delete a list. Since Graph puts the list in the URL path (/me/todo/lists/{todoTaskListId}/tasks), a rule can pin the agent to a single task list rather than the whole account. The scoped Graph bearer token stays in your instance and is injected only for the operations you permit, so the agent never sees the raw credential.
