Microsoft Entra ID (formerly Azure AD) · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Users.todo API

59 actions 59 updates phrasing extends openapi/azure-ad-users-todo-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Microsoft Entra ID (formerly Azure AD)'s API. It is a proposal applied on top of the contract, not a document Microsoft Entra ID (formerly Azure AD) publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 59 · first 16 shown; the file carries all of them

$.info
$.paths['/users/{user-id}/todo'].get
$.paths['/users/{user-id}/todo'].delete
$.paths['/users/{user-id}/todo'].patch
$.paths['/users/{user-id}/todo/lists'].get
$.paths['/users/{user-id}/todo/lists'].post
$.paths['/users/{user-id}/todo/lists/{todoTaskList-id}'].get
$.paths['/users/{user-id}/todo/lists/{todoTaskList-id}'].delete
$.paths['/users/{user-id}/todo/lists/{todoTaskList-id}'].patch
$.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/extensions'].get
$.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/extensions'].post
$.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/extensions/{extension-id}'].get
$.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/extensions/{extension-id}'].delete
$.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/extensions/{extension-id}'].patch
$.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/extensions/$count'].get
$.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks'].get

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Users.todo API
  version: 1.0.0
extends: openapi/azure-ad-users-todo-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 58
- target: $.paths['/users/{user-id}/todo'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a user's To Do service
      effect: read
      questions:
      - What does the To Do root object for a user contain?
      - Can I read a user's Microsoft To Do service resource along with its lists?
      instructions:
      - text: Get the To Do service for user {user}.
        slots:
          user: path.user-id
      - text: Show the To Do root resource of {user} with its lists expanded.
        slots:
          user: path.user-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a user's To Do service object
      effect: destructive
      questions:
      - Is it possible to delete the whole To Do navigation property for a user?
      - What happens if I remove a user's To Do root object?
      instructions:
      - text: Delete the To Do service object for user {user}.
        slots:
          user: path.user-id
      - text: Remove the entire To Do root of {user}.
        slots:
          user: path.user-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update a user's To Do service object
      effect: write
      questions:
      - Can I patch the To Do root object of a user directly?
      - Which properties of a user's To Do service can be updated?
      instructions:
      - text: Update the To Do service object for user {user}.
        slots:
          user: path.user-id
      - text: Patch the To Do root of {user} with new lists {lists}.
        slots:
          user: path.user-id
          lists: requestBody.lists
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists'].get
  update:
    x-apievangelist-phrasing:
      intent: List a user's To Do task lists
      effect: read
      questions:
      - Which task lists does a user have in Microsoft To Do?
      - Can I filter a user's To Do lists to only the shared ones?
      instructions:
      - text: List all To Do task lists for user {user}.
        slots:
          user: path.user-id
      - text: Show the shared task lists that {user} owns.
        slots:
          user: path.user-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a To Do task list
      effect: write
      questions:
      - How do I create a new task list in someone's Microsoft To Do?
      - What can I name a new To Do list when I create it?
      instructions:
      - text: Create a To Do task list called {displayName} for user {user}.
        slots:
          user: path.user-id
          displayName: requestBody.displayName
      - text: Add a new task list named {displayName} to {user}'s To Do.
        slots:
          user: path.user-id
          displayName: requestBody.displayName
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a To Do task list
      effect: read
      questions:
      - What are the details of one specific To Do task list?
      - Is this To Do list shared, and does the user own it?
      instructions:
      - text: Get task list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
      - text: Show whether To Do list {list} of {user} is shared.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a To Do task list
      effect: destructive
      questions:
      - Can I delete an entire To Do list along with its tasks?
      - How do I remove a task list from a user's To Do?
      instructions:
      - text: Delete To Do task list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
      - text: Remove list {list} from {user}'s To Do.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Rename or update a To Do task list
      effect: write
      questions:
      - How do I rename an existing To Do task list?
      - Can I change a To Do list's name after creating it?
      instructions:
      - text: Rename To Do list {list} of user {user} to {displayName}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          displayName: requestBody.displayName
      - text: Update task list {list} for {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/extensions'].get
  update:
    x-apievangelist-phrasing:
      intent: List open extensions on a To Do list
      effect: read
      questions:
      - Which open extensions are stored on a To Do task list?
      - Can I read custom data my app attached to a task list?
      instructions:
      - text: List the open extensions on To Do list {list} of user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
      - text: Show custom extension data attached to task list {list} for {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/extensions'].post
  update:
    x-apievangelist-phrasing:
      intent: Add an open extension to a To Do list
      effect: write
      questions:
      - How can I attach custom app data to a To Do task list?
      - Can I create an open extension on a task list rather than on a task?
      instructions:
      - text: Add an open extension to To Do list {list} of user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
      - text: Attach custom extension data to task list {list} for {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/extensions/{extension-id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get an open extension on a To Do list
      effect: read
      questions:
      - What's stored in one specific open extension on a task list?
      - Can I read a single extension on a To Do list by its id?
      instructions:
      - text: Get extension {extension} on To Do list {list} of user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          extension: path.extension-id
      - text: Show list extension {extension} for list {list} and {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          extension: path.extension-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/extensions/{extension-id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete an open extension from a To Do list
      effect: destructive
      questions:
      - Can I remove custom extension data from a To Do list?
      - What's the way to delete one open extension on a task list?
      instructions:
      - text: Delete extension {extension} from To Do list {list} of user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          extension: path.extension-id
      - text: Remove list extension {extension} on list {list} for {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          extension: path.extension-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/extensions/{extension-id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update an open extension on a To Do list
      effect: write
      questions:
      - Can I change the custom data in an open extension on a task list?
      - How do I patch an existing task list extension?
      instructions:
      - text: Update extension {extension} on To Do list {list} of user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          extension: path.extension-id
      - text: Patch list-level extension {extension} on list {list} for {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          extension: path.extension-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/extensions/$count'].get
  update:
    x-apievangelist-phrasing:
      intent: Count open extensions on a To Do list
      effect: read
      questions:
      - How many open extensions are on a To Do task list?
      - Is there any custom extension data on this task list at all?
      instructions:
      - text: Count the extensions on To Do list {list} of user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
      - text: Tell me how many list-level extensions {list} has for {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks'].get
  update:
    x-apievangelist-phrasing:
      intent: List tasks in a To Do list
      effect: read
      questions:
      - Which tasks are in one of my To Do lists?
      - Can I filter a To Do list's tasks to only the ones not yet completed?
      instructions:
      - text: Show every task with its title and status in To Do list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
      - text: Show incomplete tasks in list {list} of {user}, ordered by due date.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a To Do task
      effect: write
      questions:
      - How do I add a task to someone's To Do list with a due date?
      - Can I set importance and a reminder when creating a To Do task?
      instructions:
      - text: Create task {title} in To Do list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          title: requestBody.title
      - text: Add task {title} due {dueDateTime} to list {list} of {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          title: requestBody.title
          dueDateTime: requestBody.dueDateTime
      - text: Create a high-importance task {title} in list {list} for {user} with importance {importance}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          title: requestBody.title
          importance: requestBody.importance
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a To Do task
      effect: read
      questions:
      - What's the status and due date of one specific To Do task?
      - Can I read a single task's body and reminder settings?
      instructions:
      - text: Get task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      - text: Show the due date and status of To Do task {task} in {list} for {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a To Do task
      effect: destructive
      questions:
      - Can I delete a task from a To Do list?
      - How do I permanently remove one To Do task?
      instructions:
      - text: Delete task {task} from list {list} of user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      - text: Remove To Do task {task} in {list} for {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update a To Do task
      effect: write
      questions:
      - How do I mark a To Do task as completed?
      - Can I change a task's due date or importance after creating it?
      instructions:
      - text: Mark task {task} in list {list} of user {user} as {status}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          status: requestBody.status
      - text: Move the due date of task {task} in {list} for {user} to {dueDateTime}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          dueDateTime: requestBody.dueDateTime
      - text: Rename To Do task {task} in list {list} for {user} to {title}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          title: requestBody.title
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments'].get
  update:
    x-apievangelist-phrasing:
      intent: List file attachments on a To Do task
      effect: read
      questions:
      - Which files are attached to a To Do task?
      - Can I see the names and sizes of a task's attachments?
      instructions:
      - text: List attachments on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      - text: Show file attachments for To Do task {task} in {list} of {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments'].post
  update:
    x-apievangelist-phrasing:
      intent: Attach a small file to a To Do task
      effect: write
      questions:
      - How do I attach a file to a To Do task?
      - What metadata do I give when adding an attachment, like name and content type?
      instructions:
      - text: Attach file {name} to task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          name: requestBody.name
      - text: Add attachment {name} of type {contentType} to To Do task {task} in {list} for {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          name: requestBody.name
          contentType: requestBody.contentType
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/{attachmentBase-id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a To Do task attachment's details
      effect: read
      questions:
      - What are the name, size and type of one task attachment?
      - Can I read a single attachment's metadata on a To Do task?
      instructions:
      - text: Get attachment {attachment} on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          attachment: path.attachmentBase-id
      - text: Show metadata for attachment {attachment} of task {task} in {list}, {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          attachment: path.attachmentBase-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/{attachmentBase-id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Remove an attachment from a To Do task
      effect: destructive
      questions:
      - Can I delete a file attached to a To Do task?
      - What's the way to remove one attachment from a task?
      instructions:
      - text: Delete attachment {attachment} from task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          attachment: path.attachmentBase-id
      - text: Remove attached file {attachment} from To Do task {task}, list {list}, user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          attachment: path.attachmentBase-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/{attachmentBase-id}/$value'].get
  update:
    x-apievangelist-phrasing:
      intent: Download a To Do task attachment's content
      effect: read
      questions:
      - How do I download the actual file bytes of a To Do task attachment?
      - Can I get the raw media content of an attachment, not just its metadata?
      instructions:
      - text: Download the content of attachment {attachment} on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          attachment: path.attachmentBase-id
      - text: Fetch the raw file for attachment {attachment}, task {task}, list {list}, user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          attachment: path.attachmentBase-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/{attachmentBase-id}/$value'].put
  update:
    x-apievangelist-phrasing:
      intent: Replace a To Do task attachment's content
      effect: write
      questions:
      - Can I overwrite the file content of an existing task attachment?
      - Is there a way to upload new bytes to an attachment already on a To Do task?
      instructions:
      - text: Replace the file content of attachment {attachment} on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          attachment: path.attachmentBase-id
      - text: Upload new media for attachment {attachment}, task {task}, list {list}, {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          attachment: path.attachmentBase-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/{attachmentBase-id}/$value'].delete
  update:
    x-apievangelist-phrasing:
      intent: Clear a To Do task attachment's content
      effect: destructive
      questions:
      - Can I delete only the media content of an attachment and keep the attachment entry?
      - What removes the stored bytes of a task attachment?
      instructions:
      - text: Delete the media content of attachment {attachment} on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          attachment: path.attachmentBase-id
      - text: Clear the stored file bytes of attachment {attachment}, task {task}, list {list}, {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          attachment: path.attachmentBase-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/$count'].get
  update:
    x-apievangelist-phrasing:
      intent: Count attachments on a To Do task
      effect: read
      questions:
      - How many files are attached to a To Do task?
      - Does this task have any attachments at all?
      instructions:
      - text: Count the attachments on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      - text: Tell me how many files are attached to To Do task {task} in {list} for {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachments/microsoft.graph.createUploadSession'].post
  update:
    x-apievangelist-phrasing:
      intent: Start an upload session for a large task attachment
      effect: write
      questions:
      - How do I upload a large file to a To Do task in chunks?
      - What do I need to start an upload session for a task attachment?
      instructions:
      - text: Create an upload session to attach a large file to task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      - text: Start a chunked upload for attachment {attachmentInfo} on task {task}, list {list}, user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          attachmentInfo: requestBody.attachmentInfo
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions'].get
  update:
    x-apievangelist-phrasing:
      intent: List attachment upload sessions on a To Do task
      effect: read
      questions:
      - Which attachment upload sessions are open on a To Do task?
      - Can I see pending chunked uploads for a task?
      instructions:
      - text: List the attachment upload sessions on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      - text: Show open upload sessions for To Do task {task}, list {list}, {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/{attachmentSession-id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a To Do attachment upload session
      effect: read
      questions:
      - When does a specific attachment upload session expire?
      - Which byte ranges does an upload session still expect?
      instructions:
      - text: Get upload session {session} on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          session: path.attachmentSession-id
      - text: Show the next expected ranges for upload session {session}, task {task}, list {list}, {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          session: path.attachmentSession-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/{attachmentSession-id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Cancel a To Do attachment upload session
      effect: destructive
      questions:
      - Can I cancel an attachment upload session that I no longer need?
      - What deletes a stalled upload session on a To Do task?
      instructions:
      - text: Delete upload session {session} on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          session: path.attachmentSession-id
      - text: Cancel attachment upload session {session} for task {task}, list {list}, {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          session: path.attachmentSession-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/{attachmentSession-id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update a To Do attachment upload session
      effect: write
      questions:
      - Can I change the expiration of an attachment upload session?
      - Is updating an upload session's expected ranges supported?
      instructions:
      - text: Set the expiration of upload session {session} on task {task}, list {list}, user {user} to {expirationDateTime}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          session: path.attachmentSession-id
          expirationDateTime: requestBody.expirationDateTime
      - text: Update upload session {session} for task {task} in list {list} of {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          session: path.attachmentSession-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/{attachmentSession-id}/content'].get
  update:
    x-apievangelist-phrasing:
      intent: Read content uploaded to an attachment session
      effect: read
      questions:
      - Can I read back the content streams already uploaded to an upload session?
      - What data has been received so far in a task's attachment upload session?
      instructions:
      - text: Get the uploaded content of session {session} on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          session: path.attachmentSession-id
      - text: Read back bytes uploaded to session {session}, task {task}, list {list}, {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          session: path.attachmentSession-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/{attachmentSession-id}/content'].put
  update:
    x-apievangelist-phrasing:
      intent: Upload content to an attachment session
      effect: write
      questions:
      - How do I send a chunk of file data into an open attachment upload session?
      - Can I put the next byte range into a To Do upload session?
      instructions:
      - text: Upload the next chunk into session {session} on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          session: path.attachmentSession-id
      - text: Put file content into upload session {session}, task {task}, list {list}, {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          session: path.attachmentSession-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/{attachmentSession-id}/content'].delete
  update:
    x-apievangelist-phrasing:
      intent: Discard content uploaded to an attachment session
      effect: destructive
      questions:
      - Can I throw away the bytes already uploaded to an attachment session?
      - What deletes the content stream of an upload session without deleting the session?
      instructions:
      - text: Delete the uploaded content of session {session} on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          session: path.attachmentSession-id
      - text: Discard bytes uploaded to session {session}, task {task}, list {list}, {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
          session: path.attachmentSession-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/attachmentSessions/$count'].get
  update:
    x-apievangelist-phrasing:
      intent: Count attachment upload sessions on a task
      effect: read
      questions:
      - How many attachment upload sessions exist for a To Do task?
      - Are there any unfinished uploads on this task?
      instructions:
      - text: Count the upload sessions on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      - text: Tell me how many attachment sessions To Do task {task} in {list} has for {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/users/{user-id}/todo/lists/{todoTaskList-id}/tasks/{todoTask-id}/checklistItems'].get
  update:
    x-apievangelist-phrasing:
      intent: List checklist items on a To Do task
      effect: read
      questions:
      - What sub-steps are in a To Do task's checklist?
      - Which checklist items on a task are already checked off?
      instructions:
      - text: List the checklist items on task {task} in list {list} for user {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      - text: Show the sub-steps of To Do task {task} in {list} for {user}.
        slots:
          user: path.user-id
          list: path.todoTaskList-id
          task: path.todoTask-id
      method: generated
      generated: '2026-10-01'


# --- truncated at 32 KB (49 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/azure-ad/refs/heads/main/overlays/azure-ad-users-todo-api-phrasing-overlay.yaml