Microsoft To Do Me.todo API

The me.todo API from Microsoft To Do — 30 operation(s) for me.todo.

Operations 58

GET /me/todo Get todo from me #
PATCH /me/todo Update the navigation property todo in me #
DELETE /me/todo Delete navigation property todo for me #
GET /me/todo/lists List lists #
POST /me/todo/lists Create todoTaskList #
GET /me/todo/lists/{todoTaskList-id} Get todoTaskList #
PATCH /me/todo/lists/{todoTaskList-id} Update todoTaskList #
DELETE /me/todo/lists/{todoTaskList-id} Delete todoTaskList #
GET /me/todo/lists/{todoTaskList-id}/extensions Get extensions from me #
POST /me/todo/lists/{todoTaskList-id}/extensions Create new navigation property to extensions for me #
GET /me/todo/lists/{todoTaskList-id}/extensions/{extension-id} Get extensions from me #
PATCH /me/todo/lists/{todoTaskList-id}/extensions/{extension-id} Update the navigation property extensions in me #
DELETE /me/todo/lists/{todoTaskList-id}/extensions/{extension-id} Delete navigation property extensions for me #
GET /me/todo/lists/{todoTaskList-id}/extensions/$count Get the number of the resource #
GET /me/todo/lists/{todoTaskList-id}/tasks List tasks #
POST /me/todo/lists/{todoTaskList-id}/tasks Create todoTask #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id} Get todoTask #
PATCH /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id} Update todoTask #
DELETE /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id} Delete todoTask #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments List taskFileAttachments #
POST /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments Create taskFileAttachment #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/{attachmentBase-id} Get taskFileAttachment #
DELETE /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/{attachmentBase-id} Delete taskFileAttachment #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/{attachmentBase-id}/$value List taskFileAttachments #
PUT /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/{attachmentBase-id}/$value Update media content for the navigation property attachments in me #
DELETE /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/{attachmentBase-id}/$value Delete taskFileAttachment #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/$count Get the number of the resource #
POST /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/createUploadSession Invoke action createUploadSession #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions Get attachmentSessions from me #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/{attachmentSession-id} Get attachmentSessions from me #
PATCH /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/{attachmentSession-id} Update the navigation property attachmentSessions in me #
DELETE /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/{attachmentSession-id} Delete navigation property attachmentSessions for me #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/{attachmentSession-id}/content Get content for the navigation property attachmentSessions from me #
PUT /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/{attachmentSession-id}/content Update content for the navigation property attachmentSessions in me #
DELETE /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/{attachmentSession-id}/content Delete content for the navigation property attachmentSessions in me #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/$count Get the number of the resource #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/checklistItems List checklistItems #
POST /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/checklistItems Create checklistItem #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/checklistItems/{checklistItem-id} Get checklistItem #
PATCH /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/checklistItems/{checklistItem-id} Update checklistItem #
DELETE /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/checklistItems/{checklistItem-id} Delete checklistItem #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/checklistItems/$count Get the number of the resource #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/extensions Get extensions from me #
POST /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/extensions Create new navigation property to extensions for me #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/extensions/{extension-id} Get extensions from me #
PATCH /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/extensions/{extension-id} Update the navigation property extensions in me #
DELETE /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/extensions/{extension-id} Delete navigation property extensions for me #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/extensions/$count Get the number of the resource #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/linkedResources List linkedResources #
POST /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/linkedResources Create linkedResource #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/linkedResources/{linkedResource-id} Get linkedResource #
PATCH /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/linkedResources/{linkedResource-id} Update linkedResource #
DELETE /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/linkedResources/{linkedResource-id} Delete linkedResource #
GET /me/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/linkedResources/$count Get the number of the resource #
GET /me/todo/lists/{todoTaskList-id}/tasks/$count Get the number of the resource #
GET /me/todo/lists/{todoTaskList-id}/tasks/delta() Invoke function delta #
GET /me/todo/lists/$count Get the number of the resource #
GET /me/todo/lists/delta() Invoke function delta #

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/microsoft-to-do:microsoft-to-do-me-todo-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

microsoft-to-do-me-todo-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Microsoft To Do API (Microsoft Graph v1.0) Me.todo API
  description: The Microsoft To Do surface of Microsoft Graph v1.0 (todo, todoTaskList, todoTask, checklistItem, linkedResource, attachments, extensions), sliced verbatim by path prefix from the Microsoft-published Graph v1.0 OpenAPI.
  version: v1.0
servers:
- url: https://graph.microsoft.com/v1.0
tags:


# --- truncated at 32 KB (248 KB total) ---
# Full source: https://artifacts.apis.io/microsoft-to-do/openapi/microsoft-to-do-me-todo-api-openapi.yml