ask-marcel-office-cli 0.1.0 → 0.5.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +112 -114
- package/dist/cli.js +1849 -585
- package/dist/commands.json +1436 -0
- package/dist/composition/build-deps.d.ts +5 -1
- package/dist/composition/cli.d.ts +12 -6
- package/dist/composition/package-manager.d.ts +2 -0
- package/dist/index.d.ts +6 -1
- package/dist/index.js +1666 -548
- package/dist/infra/browser-auth.d.ts +9 -2
- package/dist/infra/graph-client.d.ts +2 -0
- package/dist/infra/playwright-loader.d.ts +4 -0
- package/dist/infra/process-runner-bun.d.ts +2 -0
- package/dist/infra/process-runner-node.d.ts +2 -0
- package/dist/use-cases/commands/build-command.d.ts +1 -1
- package/dist/use-cases/commands/command-types.d.ts +21 -1
- package/dist/use-cases/commands/docs-render.d.ts +24 -0
- package/dist/use-cases/commands/docs.d.ts +10 -0
- package/dist/use-cases/commands/download-drive-item-version-content.d.ts +12 -0
- package/dist/use-cases/commands/download-onedrive-file-content.d.ts +3 -1
- package/dist/use-cases/commands/get-calendar-event.d.ts +3 -1
- package/dist/use-cases/commands/get-calendar-view.d.ts +7 -2
- package/dist/use-cases/commands/get-current-user.d.ts +3 -1
- package/dist/use-cases/commands/get-drive-delta.d.ts +3 -1
- package/dist/use-cases/commands/get-drive-item.d.ts +3 -1
- package/dist/use-cases/commands/get-drive-root-item.d.ts +3 -1
- package/dist/use-cases/commands/get-excel-range.d.ts +3 -1
- package/dist/use-cases/commands/get-excel-table.d.ts +3 -1
- package/dist/use-cases/commands/get-mail-attachment.d.ts +3 -1
- package/dist/use-cases/commands/get-mail-message.d.ts +3 -1
- package/dist/use-cases/commands/get-mailbox-settings.d.ts +3 -1
- package/dist/use-cases/commands/get-my-profile-photo.d.ts +6 -2
- package/dist/use-cases/commands/get-onenote-page-content.d.ts +6 -2
- package/dist/use-cases/commands/get-planner-bucket.d.ts +3 -1
- package/dist/use-cases/commands/get-planner-plan.d.ts +3 -1
- package/dist/use-cases/commands/get-planner-task-details.d.ts +3 -1
- package/dist/use-cases/commands/get-planner-task.d.ts +3 -1
- package/dist/use-cases/commands/get-sharepoint-site-by-path.d.ts +4 -2
- package/dist/use-cases/commands/get-sharepoint-site-drive-by-id.d.ts +3 -1
- package/dist/use-cases/commands/get-sharepoint-site-list-item.d.ts +3 -1
- package/dist/use-cases/commands/get-sharepoint-site-list.d.ts +3 -1
- package/dist/use-cases/commands/get-sharepoint-site.d.ts +3 -1
- package/dist/use-cases/commands/get-specific-calendar-event.d.ts +3 -1
- package/dist/use-cases/commands/get-specific-calendar-view.d.ts +5 -1
- package/dist/use-cases/commands/get-team-channel.d.ts +3 -1
- package/dist/use-cases/commands/get-team.d.ts +3 -1
- package/dist/use-cases/commands/get-todo-task.d.ts +3 -1
- package/dist/use-cases/commands/list-all-onenote-sections.d.ts +3 -1
- package/dist/use-cases/commands/list-calendar-event-instances.d.ts +5 -1
- package/dist/use-cases/commands/list-calendar-events-delta.d.ts +3 -1
- package/dist/use-cases/commands/list-calendar-events.d.ts +3 -1
- package/dist/use-cases/commands/list-calendar-view-delta.d.ts +7 -2
- package/dist/use-cases/commands/list-calendars.d.ts +3 -1
- package/dist/use-cases/commands/list-chat-members.d.ts +3 -1
- package/dist/use-cases/commands/list-drive-item-permissions.d.ts +3 -1
- package/dist/use-cases/commands/list-drive-item-versions.d.ts +3 -1
- package/dist/use-cases/commands/list-drives.d.ts +3 -1
- package/dist/use-cases/commands/list-excel-table-rows.d.ts +3 -1
- package/dist/use-cases/commands/list-excel-tables.d.ts +3 -1
- package/dist/use-cases/commands/list-excel-worksheets.d.ts +3 -1
- package/dist/use-cases/commands/list-folder-files.d.ts +3 -1
- package/dist/use-cases/commands/{get-sharepoint-sites-delta.d.ts → list-incomplete-planner-tasks.d.ts} +3 -1
- package/dist/use-cases/commands/list-incomplete-todo-tasks.d.ts +8 -0
- package/dist/use-cases/commands/list-joined-teams.d.ts +3 -1
- package/dist/use-cases/commands/list-mail-attachments.d.ts +3 -1
- package/dist/use-cases/commands/list-mail-child-folders.d.ts +3 -1
- package/dist/use-cases/commands/list-mail-folder-messages.d.ts +3 -1
- package/dist/use-cases/commands/list-mail-folders.d.ts +3 -1
- package/dist/use-cases/commands/list-mail-messages.d.ts +3 -1
- package/dist/use-cases/commands/list-mail-rules.d.ts +3 -1
- package/dist/use-cases/commands/list-onenote-notebook-sections.d.ts +3 -1
- package/dist/use-cases/commands/list-onenote-notebooks.d.ts +3 -1
- package/dist/use-cases/commands/list-onenote-section-pages.d.ts +3 -1
- package/dist/use-cases/commands/list-plan-buckets.d.ts +3 -1
- package/dist/use-cases/commands/list-plan-tasks.d.ts +3 -1
- package/dist/use-cases/commands/{list-chats.d.ts → list-planner-plans.d.ts} +3 -1
- package/dist/use-cases/commands/list-planner-tasks.d.ts +3 -1
- package/dist/use-cases/commands/list-sharepoint-site-drives.d.ts +3 -1
- package/dist/use-cases/commands/list-sharepoint-site-list-items.d.ts +3 -1
- package/dist/use-cases/commands/list-sharepoint-site-lists.d.ts +3 -1
- package/dist/use-cases/commands/list-specific-calendar-events.d.ts +3 -1
- package/dist/use-cases/commands/list-team-channels.d.ts +3 -1
- package/dist/use-cases/commands/list-todo-linked-resources.d.ts +3 -1
- package/dist/use-cases/commands/list-todo-task-lists.d.ts +3 -1
- package/dist/use-cases/commands/list-todo-tasks.d.ts +3 -1
- package/dist/use-cases/commands/{get-channel-files-folder.d.ts → next-page.d.ts} +4 -3
- package/dist/use-cases/commands/{get-chat-message.d.ts → search-mail-messages.d.ts} +4 -3
- package/dist/use-cases/commands/{get-channel-message.d.ts → search-my-documents.d.ts} +4 -4
- package/dist/use-cases/commands/search-onedrive-files.d.ts +3 -1
- package/dist/use-cases/commands/search-onenote-pages.d.ts +8 -0
- package/dist/use-cases/commands/{get-chat-message-hosted-content.d.ts → search-sharepoint-sites-by-name.d.ts} +4 -4
- package/dist/use-cases/commands/search-sharepoint-sites.d.ts +3 -1
- package/dist/use-cases/commands/update.d.ts +16 -0
- package/dist/use-cases/ports/process-runner.d.ts +11 -0
- package/docs/commands.json +1436 -0
- package/package.json +6 -3
- package/dist/use-cases/commands/get-channel-message-hosted-content.d.ts +0 -9
- package/dist/use-cases/commands/get-chat.d.ts +0 -6
- package/dist/use-cases/commands/get-outlook-contact.d.ts +0 -6
- package/dist/use-cases/commands/get-sharepoint-site-item.d.ts +0 -7
- package/dist/use-cases/commands/list-channel-message-hosted-contents.d.ts +0 -8
- package/dist/use-cases/commands/list-channel-message-replies.d.ts +0 -8
- package/dist/use-cases/commands/list-channel-messages.d.ts +0 -7
- package/dist/use-cases/commands/list-channel-tabs.d.ts +0 -7
- package/dist/use-cases/commands/list-chat-message-hosted-contents.d.ts +0 -7
- package/dist/use-cases/commands/list-chat-message-replies.d.ts +0 -7
- package/dist/use-cases/commands/list-chat-messages.d.ts +0 -6
- package/dist/use-cases/commands/list-outlook-contacts.d.ts +0 -4
- package/dist/use-cases/commands/list-pinned-chat-messages.d.ts +0 -6
- package/dist/use-cases/commands/list-sharepoint-site-items.d.ts +0 -6
- package/dist/use-cases/commands/list-team-members.d.ts +0 -6
|
@@ -0,0 +1,1436 @@
|
|
|
1
|
+
{
|
|
2
|
+
"package": "ask-marcel-office-cli",
|
|
3
|
+
"version": "0.5.5",
|
|
4
|
+
"generatedAt": "2026-05-01T04:20:27.291Z",
|
|
5
|
+
"commands": [
|
|
6
|
+
{
|
|
7
|
+
"name": "download-drive-item-version-content",
|
|
8
|
+
"summary": "Download the binary content of a specific *non-current* historical version of a OneDrive / SharePoint file. Graph refuses to serve the current version through this endpoint with \"You cannot get the content of the current version\" — for the current version use `download-onedrive-file-content` instead. Same envelope as that command (302 → downloadUrl, or base64 bytes).",
|
|
9
|
+
"category": "drive",
|
|
10
|
+
"graphMethod": "GET",
|
|
11
|
+
"graphPathTemplate": "/drives/{drive-id}/items/{item-id}/versions/{version-id}/content",
|
|
12
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/driveitemversion-get-content",
|
|
13
|
+
"options": [
|
|
14
|
+
{
|
|
15
|
+
"name": "drive-id",
|
|
16
|
+
"key": "driveId",
|
|
17
|
+
"required": true,
|
|
18
|
+
"description": "Microsoft Graph drive ID. Use `ask-marcel list-drives` for the personal OneDrive, or `ask-marcel list-sharepoint-site-drives --site-id <id>` for a SharePoint document library."
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "item-id",
|
|
22
|
+
"key": "itemId",
|
|
23
|
+
"required": true,
|
|
24
|
+
"description": "driveItem ID of the file. Returned by `list-folder-files` or `search-onedrive-files`."
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "version-id",
|
|
28
|
+
"key": "versionId",
|
|
29
|
+
"required": true,
|
|
30
|
+
"description": "driveItemVersion ID. Returned by `ask-marcel list-drive-item-versions`. Use the `id` field of an entry under `value[]`. Pick a non-current version — the first entry (e.g. `12.0`) is the live file and Graph rejects this endpoint for it; use `value[1]` or older."
|
|
31
|
+
}
|
|
32
|
+
],
|
|
33
|
+
"example": "ask-marcel download-drive-item-version-content --drive-id 'b!1234' --item-id '01ABC' --version-id '4.0'",
|
|
34
|
+
"responseShape": "`{ \"@microsoft.graph.downloadUrl\": \"...\" }` for the typical 302 case, or `{ contentType, size, base64 }` when Graph streams bytes directly"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"name": "download-onedrive-file-content",
|
|
38
|
+
"summary": "Download the binary content of a file stored in OneDrive / SharePoint. Graph normally returns a 302 redirect to a pre-signed CDN URL, surfaced as `@microsoft.graph.downloadUrl`; if it returns bytes directly they are base64-encoded for safe JSON output.",
|
|
39
|
+
"category": "drive",
|
|
40
|
+
"graphMethod": "GET",
|
|
41
|
+
"graphPathTemplate": "/drives/{drive-id}/items/{item-id}/content",
|
|
42
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/driveitem-get-content",
|
|
43
|
+
"options": [
|
|
44
|
+
{
|
|
45
|
+
"name": "drive-id",
|
|
46
|
+
"key": "driveId",
|
|
47
|
+
"required": true,
|
|
48
|
+
"description": "Microsoft Graph drive ID. Returned by `ask-marcel list-drives`."
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"name": "item-id",
|
|
52
|
+
"key": "itemId",
|
|
53
|
+
"required": true,
|
|
54
|
+
"description": "driveItem ID of the file to download. Returned by `ask-marcel list-folder-files` or `search-onedrive-files`."
|
|
55
|
+
}
|
|
56
|
+
],
|
|
57
|
+
"example": "ask-marcel download-onedrive-file-content --drive-id 'b!1234' --item-id '01ABC'",
|
|
58
|
+
"responseShape": "`{ \"@microsoft.graph.downloadUrl\": \"...\" }` for the typical 302 case, or `{ contentType, size, base64 }` when Graph streams bytes directly"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"name": "get-calendar-event",
|
|
62
|
+
"summary": "Fetch a single calendar event by ID from the signed-in user’s default calendar.",
|
|
63
|
+
"category": "calendar",
|
|
64
|
+
"graphMethod": "GET",
|
|
65
|
+
"graphPathTemplate": "/me/events/{event-id}",
|
|
66
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/event-get",
|
|
67
|
+
"options": [
|
|
68
|
+
{
|
|
69
|
+
"name": "event-id",
|
|
70
|
+
"key": "eventId",
|
|
71
|
+
"required": true,
|
|
72
|
+
"description": "Microsoft Graph event ID. Returned by `ask-marcel list-calendar-events` in the `id` field of each event."
|
|
73
|
+
}
|
|
74
|
+
],
|
|
75
|
+
"example": "ask-marcel get-calendar-event --event-id 'AAMkAGI2THVS...'",
|
|
76
|
+
"responseShape": "single Microsoft Graph `event` resource"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"name": "get-calendar-view",
|
|
80
|
+
"summary": "List the signed-in user’s default-calendar events with recurrence expanded into individual occurrences in a date range. Both ISO date-time params are required by Graph.",
|
|
81
|
+
"category": "calendar",
|
|
82
|
+
"graphMethod": "GET",
|
|
83
|
+
"graphPathTemplate": "/me/calendarView?startDateTime={start-date-time}&endDateTime={end-date-time}",
|
|
84
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/user-list-calendarview",
|
|
85
|
+
"options": [
|
|
86
|
+
{
|
|
87
|
+
"name": "start-date-time",
|
|
88
|
+
"key": "startDateTime",
|
|
89
|
+
"required": true,
|
|
90
|
+
"description": "ISO 8601 lower bound (UTC). Example: `2026-04-01T00:00:00Z`. Required by Graph; the request fails without it."
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"name": "end-date-time",
|
|
94
|
+
"key": "endDateTime",
|
|
95
|
+
"required": true,
|
|
96
|
+
"description": "ISO 8601 upper bound (UTC). Example: `2026-05-01T00:00:00Z`. Required by Graph; the request fails without it."
|
|
97
|
+
}
|
|
98
|
+
],
|
|
99
|
+
"example": "ask-marcel get-calendar-view --start-date-time '2026-04-01T00:00:00Z' --end-date-time '2026-05-01T00:00:00Z'",
|
|
100
|
+
"responseShape": "collection of Microsoft Graph `event` resources (single occurrences) under `value[]`"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"name": "get-current-user",
|
|
104
|
+
"summary": "Return the signed-in user’s Microsoft Graph profile (id, displayName, mail, jobTitle, etc.).",
|
|
105
|
+
"category": "user",
|
|
106
|
+
"graphMethod": "GET",
|
|
107
|
+
"graphPathTemplate": "/me",
|
|
108
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/user-get",
|
|
109
|
+
"options": [],
|
|
110
|
+
"example": "ask-marcel get-current-user",
|
|
111
|
+
"responseShape": "single Microsoft Graph `user` resource"
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"name": "get-drive-delta",
|
|
115
|
+
"summary": "Get the incremental change set (added / modified / deleted items) under a OneDrive / SharePoint folder. Use the `@odata.deltaLink` from a previous response to resume.",
|
|
116
|
+
"category": "drive",
|
|
117
|
+
"graphMethod": "GET",
|
|
118
|
+
"graphPathTemplate": "/drives/{drive-id}/items/{item-id}/delta()",
|
|
119
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/driveitem-delta",
|
|
120
|
+
"options": [
|
|
121
|
+
{
|
|
122
|
+
"name": "drive-id",
|
|
123
|
+
"key": "driveId",
|
|
124
|
+
"required": true,
|
|
125
|
+
"description": "Microsoft Graph drive ID. Returned by `ask-marcel list-drives`."
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"name": "item-id",
|
|
129
|
+
"key": "itemId",
|
|
130
|
+
"required": true,
|
|
131
|
+
"description": "driveItem ID of the folder whose subtree to track. Use the root folder ID from `get-drive-root-item` to track the entire drive."
|
|
132
|
+
}
|
|
133
|
+
],
|
|
134
|
+
"example": "ask-marcel get-drive-delta --drive-id 'b!1234' --item-id '01ROOT'",
|
|
135
|
+
"responseShape": "collection of changed Microsoft Graph `driveItem` resources under `value[]` plus an `@odata.deltaLink` token"
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
"name": "get-drive-item",
|
|
139
|
+
"summary": "Get the metadata (driveItem resource) of a single file or folder in OneDrive / SharePoint.",
|
|
140
|
+
"category": "drive",
|
|
141
|
+
"graphMethod": "GET",
|
|
142
|
+
"graphPathTemplate": "/drives/{drive-id}/items/{item-id}",
|
|
143
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/driveitem-get",
|
|
144
|
+
"options": [
|
|
145
|
+
{
|
|
146
|
+
"name": "drive-id",
|
|
147
|
+
"key": "driveId",
|
|
148
|
+
"required": true,
|
|
149
|
+
"description": "Microsoft Graph drive ID. Returned by `ask-marcel list-drives`."
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
"name": "item-id",
|
|
153
|
+
"key": "itemId",
|
|
154
|
+
"required": true,
|
|
155
|
+
"description": "driveItem ID. Returned by `list-folder-files`, `search-onedrive-files`, or `get-drive-root-item`."
|
|
156
|
+
}
|
|
157
|
+
],
|
|
158
|
+
"example": "ask-marcel get-drive-item --drive-id 'b!1234' --item-id '01ABC'",
|
|
159
|
+
"responseShape": "single Microsoft Graph `driveItem` resource"
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
"name": "get-drive-root-item",
|
|
163
|
+
"summary": "Get the root folder (driveItem) of a OneDrive / SharePoint drive.",
|
|
164
|
+
"category": "drive",
|
|
165
|
+
"graphMethod": "GET",
|
|
166
|
+
"graphPathTemplate": "/drives/{drive-id}/root",
|
|
167
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/driveitem-get",
|
|
168
|
+
"options": [
|
|
169
|
+
{
|
|
170
|
+
"name": "drive-id",
|
|
171
|
+
"key": "driveId",
|
|
172
|
+
"required": true,
|
|
173
|
+
"description": "Microsoft Graph drive ID. Returned by `ask-marcel list-drives` in the `id` field."
|
|
174
|
+
}
|
|
175
|
+
],
|
|
176
|
+
"example": "ask-marcel get-drive-root-item --drive-id 'b!1234'",
|
|
177
|
+
"responseShape": "single Microsoft Graph `driveItem` resource (the root folder)"
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
"name": "get-excel-range",
|
|
181
|
+
"summary": "Get the cell values, formulas, and formats of a specific Excel range (e.g. `A1:C10`).",
|
|
182
|
+
"category": "excel",
|
|
183
|
+
"graphMethod": "GET",
|
|
184
|
+
"graphPathTemplate": "/drives/{drive-id}/items/{item-id}/workbook/worksheets/{worksheet-id}/range(address='{address}')",
|
|
185
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/worksheet-range",
|
|
186
|
+
"options": [
|
|
187
|
+
{
|
|
188
|
+
"name": "drive-id",
|
|
189
|
+
"key": "driveId",
|
|
190
|
+
"required": true,
|
|
191
|
+
"description": "Microsoft Graph drive ID containing the workbook. Returned by `ask-marcel list-drives`."
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
"name": "item-id",
|
|
195
|
+
"key": "itemId",
|
|
196
|
+
"required": true,
|
|
197
|
+
"description": "driveItem ID of the .xlsx file."
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
"name": "worksheet-id",
|
|
201
|
+
"key": "worksheetId",
|
|
202
|
+
"required": true,
|
|
203
|
+
"description": "Worksheet ID or worksheet name. Returned by `ask-marcel list-excel-worksheets`."
|
|
204
|
+
},
|
|
205
|
+
{
|
|
206
|
+
"name": "address",
|
|
207
|
+
"key": "address",
|
|
208
|
+
"required": true,
|
|
209
|
+
"description": "A1-style range address, e.g. `A1:C10` or a single cell like `B7`."
|
|
210
|
+
}
|
|
211
|
+
],
|
|
212
|
+
"example": "ask-marcel get-excel-range --drive-id 'b!1234' --item-id '01XLSX' --worksheet-id 'Sheet1' --address 'A1:C10'",
|
|
213
|
+
"responseShape": "single Microsoft Graph `workbookRange` resource (values, formulas, format)"
|
|
214
|
+
},
|
|
215
|
+
{
|
|
216
|
+
"name": "get-excel-table",
|
|
217
|
+
"summary": "Get the metadata (style, header row, total row) of a single named Excel table.",
|
|
218
|
+
"category": "excel",
|
|
219
|
+
"graphMethod": "GET",
|
|
220
|
+
"graphPathTemplate": "/drives/{drive-id}/items/{item-id}/workbook/tables/{table-id}",
|
|
221
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/workbooktable-get",
|
|
222
|
+
"options": [
|
|
223
|
+
{
|
|
224
|
+
"name": "drive-id",
|
|
225
|
+
"key": "driveId",
|
|
226
|
+
"required": true,
|
|
227
|
+
"description": "Microsoft Graph drive ID containing the workbook. Returned by `ask-marcel list-drives`."
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
"name": "item-id",
|
|
231
|
+
"key": "itemId",
|
|
232
|
+
"required": true,
|
|
233
|
+
"description": "driveItem ID of the .xlsx file."
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
"name": "table-id",
|
|
237
|
+
"key": "tableId",
|
|
238
|
+
"required": true,
|
|
239
|
+
"description": "Workbook table ID or table name. Returned by `ask-marcel list-excel-tables`."
|
|
240
|
+
}
|
|
241
|
+
],
|
|
242
|
+
"example": "ask-marcel get-excel-table --drive-id 'b!1234' --item-id '01XLSX' --table-id 'Table1'",
|
|
243
|
+
"responseShape": "single Microsoft Graph `workbookTable` resource"
|
|
244
|
+
},
|
|
245
|
+
{
|
|
246
|
+
"name": "get-mail-attachment",
|
|
247
|
+
"summary": "Get a single attachment on an Outlook message (metadata, plus the base64 `contentBytes` for file attachments).",
|
|
248
|
+
"category": "mail",
|
|
249
|
+
"graphMethod": "GET",
|
|
250
|
+
"graphPathTemplate": "/me/messages/{message-id}/attachments/{attachment-id}",
|
|
251
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/attachment-get",
|
|
252
|
+
"options": [
|
|
253
|
+
{
|
|
254
|
+
"name": "message-id",
|
|
255
|
+
"key": "messageId",
|
|
256
|
+
"required": true,
|
|
257
|
+
"description": "Outlook message ID. Returned by `ask-marcel list-mail-messages`."
|
|
258
|
+
},
|
|
259
|
+
{
|
|
260
|
+
"name": "attachment-id",
|
|
261
|
+
"key": "attachmentId",
|
|
262
|
+
"required": true,
|
|
263
|
+
"description": "Attachment ID. Returned by `ask-marcel list-mail-attachments`."
|
|
264
|
+
}
|
|
265
|
+
],
|
|
266
|
+
"example": "ask-marcel get-mail-attachment --message-id 'AAMkAGI2...' --attachment-id 'AAMkABC...'",
|
|
267
|
+
"responseShape": "single Microsoft Graph `attachment` resource"
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
"name": "get-mail-message",
|
|
271
|
+
"summary": "Get a single Outlook message by ID, including subject, sender, body, and flags.",
|
|
272
|
+
"category": "mail",
|
|
273
|
+
"graphMethod": "GET",
|
|
274
|
+
"graphPathTemplate": "/me/messages/{message-id}",
|
|
275
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/message-get",
|
|
276
|
+
"options": [
|
|
277
|
+
{
|
|
278
|
+
"name": "message-id",
|
|
279
|
+
"key": "messageId",
|
|
280
|
+
"required": true,
|
|
281
|
+
"description": "Outlook message ID. Returned by `ask-marcel list-mail-messages` or `list-mail-folder-messages`."
|
|
282
|
+
}
|
|
283
|
+
],
|
|
284
|
+
"example": "ask-marcel get-mail-message --message-id 'AAMkAGI2...'",
|
|
285
|
+
"responseShape": "single Microsoft Graph `message` resource"
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
"name": "get-mailbox-settings",
|
|
289
|
+
"summary": "Get the signed-in user’s Outlook mailbox settings (timezone, working hours, automatic replies).",
|
|
290
|
+
"category": "mail",
|
|
291
|
+
"graphMethod": "GET",
|
|
292
|
+
"graphPathTemplate": "/me/mailboxSettings",
|
|
293
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/user-get-mailboxsettings",
|
|
294
|
+
"options": [],
|
|
295
|
+
"example": "ask-marcel get-mailbox-settings",
|
|
296
|
+
"responseShape": "single Microsoft Graph `mailboxSettings` resource"
|
|
297
|
+
},
|
|
298
|
+
{
|
|
299
|
+
"name": "get-my-profile-photo",
|
|
300
|
+
"summary": "Download the signed-in user’s profile photo (largest available size). Returned as a base64 envelope so the binary survives JSON output.",
|
|
301
|
+
"category": "user",
|
|
302
|
+
"graphMethod": "GET",
|
|
303
|
+
"graphPathTemplate": "/me/photo/$value",
|
|
304
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/profilephoto-get",
|
|
305
|
+
"options": [],
|
|
306
|
+
"example": "ask-marcel get-my-profile-photo",
|
|
307
|
+
"responseShape": "`{ contentType: \"image/jpeg\", size: <bytes>, base64: \"<encoded>\" }` (or `{ \"@microsoft.graph.downloadUrl\": \"...\" }` when Graph returns a 302 redirect to a CDN URL)"
|
|
308
|
+
},
|
|
309
|
+
{
|
|
310
|
+
"name": "get-onenote-page-content",
|
|
311
|
+
"summary": "Get the HTML body of a single OneNote page. Returned in a JSON envelope so the HTML survives transport.",
|
|
312
|
+
"category": "notes",
|
|
313
|
+
"graphMethod": "GET",
|
|
314
|
+
"graphPathTemplate": "/me/onenote/pages/{onenote-page-id}/content",
|
|
315
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/page-get",
|
|
316
|
+
"options": [
|
|
317
|
+
{
|
|
318
|
+
"name": "onenote-page-id",
|
|
319
|
+
"key": "onenotePageId",
|
|
320
|
+
"required": true,
|
|
321
|
+
"description": "OneNote page ID. Returned by `ask-marcel list-onenote-section-pages`."
|
|
322
|
+
}
|
|
323
|
+
],
|
|
324
|
+
"example": "ask-marcel get-onenote-page-content --onenote-page-id '1-abc...'",
|
|
325
|
+
"responseShape": "`{ contentType: \"text/html\", size: <chars>, text: \"<html>...\" }` — the rendered OneNote page body wrapped in a JSON envelope"
|
|
326
|
+
},
|
|
327
|
+
{
|
|
328
|
+
"name": "get-planner-bucket",
|
|
329
|
+
"summary": "Get the metadata of a single Microsoft Planner bucket (column / lane).",
|
|
330
|
+
"category": "tasks",
|
|
331
|
+
"graphMethod": "GET",
|
|
332
|
+
"graphPathTemplate": "/planner/buckets/{planner-bucket-id}",
|
|
333
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/plannerbucket-get",
|
|
334
|
+
"options": [
|
|
335
|
+
{
|
|
336
|
+
"name": "planner-bucket-id",
|
|
337
|
+
"key": "plannerBucketId",
|
|
338
|
+
"required": true,
|
|
339
|
+
"description": "Planner bucket ID. Returned by `ask-marcel list-plan-buckets`."
|
|
340
|
+
}
|
|
341
|
+
],
|
|
342
|
+
"example": "ask-marcel get-planner-bucket --planner-bucket-id 'sFNeQRFu_kqhxpwwAhmA15gAGfoT'",
|
|
343
|
+
"responseShape": "single Microsoft Graph `plannerBucket` resource"
|
|
344
|
+
},
|
|
345
|
+
{
|
|
346
|
+
"name": "get-planner-plan",
|
|
347
|
+
"summary": "Get the metadata of a single Microsoft Planner plan (title, owner group, container).",
|
|
348
|
+
"category": "tasks",
|
|
349
|
+
"graphMethod": "GET",
|
|
350
|
+
"graphPathTemplate": "/planner/plans/{planner-plan-id}",
|
|
351
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/plannerplan-get",
|
|
352
|
+
"options": [
|
|
353
|
+
{
|
|
354
|
+
"name": "planner-plan-id",
|
|
355
|
+
"key": "plannerPlanId",
|
|
356
|
+
"required": true,
|
|
357
|
+
"description": "Planner plan ID. Returned in the `planId` field of any task from `ask-marcel list-planner-tasks`."
|
|
358
|
+
}
|
|
359
|
+
],
|
|
360
|
+
"example": "ask-marcel get-planner-plan --planner-plan-id 'xqQg5FS2LkCp935s-FIFm5gAB6'",
|
|
361
|
+
"responseShape": "single Microsoft Graph `plannerPlan` resource"
|
|
362
|
+
},
|
|
363
|
+
{
|
|
364
|
+
"name": "get-planner-task",
|
|
365
|
+
"summary": "Get the metadata of a single Microsoft Planner task (title, assignees, dates, completion).",
|
|
366
|
+
"category": "tasks",
|
|
367
|
+
"graphMethod": "GET",
|
|
368
|
+
"graphPathTemplate": "/planner/tasks/{planner-task-id}",
|
|
369
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/plannertask-get",
|
|
370
|
+
"options": [
|
|
371
|
+
{
|
|
372
|
+
"name": "planner-task-id",
|
|
373
|
+
"key": "plannerTaskId",
|
|
374
|
+
"required": true,
|
|
375
|
+
"description": "Planner task ID. Returned by `ask-marcel list-planner-tasks` or `list-plan-tasks`."
|
|
376
|
+
}
|
|
377
|
+
],
|
|
378
|
+
"example": "ask-marcel get-planner-task --planner-task-id '01tx7Ic7-USXEwt0lvR1cmgAH8gK'",
|
|
379
|
+
"responseShape": "single Microsoft Graph `plannerTask` resource"
|
|
380
|
+
},
|
|
381
|
+
{
|
|
382
|
+
"name": "get-planner-task-details",
|
|
383
|
+
"summary": "Get the rich details (description, checklist, references) of a Microsoft Planner task.",
|
|
384
|
+
"category": "tasks",
|
|
385
|
+
"graphMethod": "GET",
|
|
386
|
+
"graphPathTemplate": "/planner/tasks/{planner-task-id}/details",
|
|
387
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/plannertaskdetails-get",
|
|
388
|
+
"options": [
|
|
389
|
+
{
|
|
390
|
+
"name": "planner-task-id",
|
|
391
|
+
"key": "plannerTaskId",
|
|
392
|
+
"required": true,
|
|
393
|
+
"description": "Planner task ID. Returned by `ask-marcel list-planner-tasks` or `list-plan-tasks`."
|
|
394
|
+
}
|
|
395
|
+
],
|
|
396
|
+
"example": "ask-marcel get-planner-task-details --planner-task-id '01tx7Ic7-USXEwt0lvR1cmgAH8gK'",
|
|
397
|
+
"responseShape": "single Microsoft Graph `plannerTaskDetails` resource"
|
|
398
|
+
},
|
|
399
|
+
{
|
|
400
|
+
"name": "get-sharepoint-site",
|
|
401
|
+
"summary": "Get the metadata of a single SharePoint site by its site ID.",
|
|
402
|
+
"category": "sharepoint",
|
|
403
|
+
"graphMethod": "GET",
|
|
404
|
+
"graphPathTemplate": "/sites/{site-id}",
|
|
405
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/site-get",
|
|
406
|
+
"options": [
|
|
407
|
+
{
|
|
408
|
+
"name": "site-id",
|
|
409
|
+
"key": "siteId",
|
|
410
|
+
"required": true,
|
|
411
|
+
"description": "SharePoint site ID. Either the composite ID (`hostname,site-collection-id,site-id`) returned by `ask-marcel search-sharepoint-sites`, or the literal `root` to refer to the tenant root site."
|
|
412
|
+
}
|
|
413
|
+
],
|
|
414
|
+
"example": "ask-marcel get-sharepoint-site --site-id 'contoso.sharepoint.com,1234,5678'",
|
|
415
|
+
"responseShape": "single Microsoft Graph `site` resource"
|
|
416
|
+
},
|
|
417
|
+
{
|
|
418
|
+
"name": "get-sharepoint-site-by-path",
|
|
419
|
+
"summary": "Resolve a SharePoint site by its hostname + server-relative path. Use this when you have a SharePoint URL (e.g. `https://contoso.sharepoint.com/sites/Marketing`) but no site ID.",
|
|
420
|
+
"category": "sharepoint",
|
|
421
|
+
"graphMethod": "GET",
|
|
422
|
+
"graphPathTemplate": "/sites/{hostname}:{path}",
|
|
423
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/site-get",
|
|
424
|
+
"options": [
|
|
425
|
+
{
|
|
426
|
+
"name": "hostname",
|
|
427
|
+
"key": "hostname",
|
|
428
|
+
"required": true,
|
|
429
|
+
"description": "SharePoint host, e.g. `contoso.sharepoint.com` (or `contoso-my.sharepoint.com` for personal sites). Take the host portion of your SharePoint URL."
|
|
430
|
+
},
|
|
431
|
+
{
|
|
432
|
+
"name": "path",
|
|
433
|
+
"key": "path",
|
|
434
|
+
"required": true,
|
|
435
|
+
"description": "Server-relative path starting with `/`, e.g. `/sites/Marketing` or `/teams/Marketing/Subsite`. Take the URL pathname after the hostname."
|
|
436
|
+
}
|
|
437
|
+
],
|
|
438
|
+
"example": "ask-marcel get-sharepoint-site-by-path --hostname 'contoso.sharepoint.com' --path '/sites/Marketing'",
|
|
439
|
+
"responseShape": "single Microsoft Graph `site` resource"
|
|
440
|
+
},
|
|
441
|
+
{
|
|
442
|
+
"name": "get-sharepoint-site-drive-by-id",
|
|
443
|
+
"summary": "Get the metadata of a single document library (drive) on a SharePoint site by drive ID.",
|
|
444
|
+
"category": "sharepoint",
|
|
445
|
+
"graphMethod": "GET",
|
|
446
|
+
"graphPathTemplate": "/sites/{site-id}/drives/{drive-id}",
|
|
447
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/drive-get",
|
|
448
|
+
"options": [
|
|
449
|
+
{
|
|
450
|
+
"name": "site-id",
|
|
451
|
+
"key": "siteId",
|
|
452
|
+
"required": true,
|
|
453
|
+
"description": "SharePoint site ID. Returned by `ask-marcel search-sharepoint-sites`."
|
|
454
|
+
},
|
|
455
|
+
{
|
|
456
|
+
"name": "drive-id",
|
|
457
|
+
"key": "driveId",
|
|
458
|
+
"required": true,
|
|
459
|
+
"description": "Drive (document library) ID on the site. Returned by `ask-marcel list-sharepoint-site-drives`."
|
|
460
|
+
}
|
|
461
|
+
],
|
|
462
|
+
"example": "ask-marcel get-sharepoint-site-drive-by-id --site-id 'contoso.sharepoint.com,1234,5678' --drive-id 'b!abcd'",
|
|
463
|
+
"responseShape": "single Microsoft Graph `drive` resource"
|
|
464
|
+
},
|
|
465
|
+
{
|
|
466
|
+
"name": "get-sharepoint-site-list",
|
|
467
|
+
"summary": "Get the metadata (display name, template, columns) of a single SharePoint list.",
|
|
468
|
+
"category": "sharepoint",
|
|
469
|
+
"graphMethod": "GET",
|
|
470
|
+
"graphPathTemplate": "/sites/{site-id}/lists/{list-id}",
|
|
471
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/list-get",
|
|
472
|
+
"options": [
|
|
473
|
+
{
|
|
474
|
+
"name": "site-id",
|
|
475
|
+
"key": "siteId",
|
|
476
|
+
"required": true,
|
|
477
|
+
"description": "SharePoint site ID. Returned by `ask-marcel search-sharepoint-sites`."
|
|
478
|
+
},
|
|
479
|
+
{
|
|
480
|
+
"name": "list-id",
|
|
481
|
+
"key": "listId",
|
|
482
|
+
"required": true,
|
|
483
|
+
"description": "SharePoint list ID or display name. Returned by `ask-marcel list-sharepoint-site-lists`."
|
|
484
|
+
}
|
|
485
|
+
],
|
|
486
|
+
"example": "ask-marcel get-sharepoint-site-list --site-id 'contoso.sharepoint.com,1234,5678' --list-id 'Documents'",
|
|
487
|
+
"responseShape": "single Microsoft Graph `list` resource"
|
|
488
|
+
},
|
|
489
|
+
{
|
|
490
|
+
"name": "get-sharepoint-site-list-item",
|
|
491
|
+
"summary": "Get a single row (listItem) of a SharePoint list by ID.",
|
|
492
|
+
"category": "sharepoint",
|
|
493
|
+
"graphMethod": "GET",
|
|
494
|
+
"graphPathTemplate": "/sites/{site-id}/lists/{list-id}/items/{list-item-id}",
|
|
495
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/listitem-get",
|
|
496
|
+
"options": [
|
|
497
|
+
{
|
|
498
|
+
"name": "site-id",
|
|
499
|
+
"key": "siteId",
|
|
500
|
+
"required": true,
|
|
501
|
+
"description": "SharePoint site ID. Returned by `ask-marcel search-sharepoint-sites`."
|
|
502
|
+
},
|
|
503
|
+
{
|
|
504
|
+
"name": "list-id",
|
|
505
|
+
"key": "listId",
|
|
506
|
+
"required": true,
|
|
507
|
+
"description": "SharePoint list ID or display name. Returned by `ask-marcel list-sharepoint-site-lists`."
|
|
508
|
+
},
|
|
509
|
+
{
|
|
510
|
+
"name": "list-item-id",
|
|
511
|
+
"key": "listItemId",
|
|
512
|
+
"required": true,
|
|
513
|
+
"description": "listItem ID (typically a small integer). Returned by `ask-marcel list-sharepoint-site-list-items`."
|
|
514
|
+
}
|
|
515
|
+
],
|
|
516
|
+
"example": "ask-marcel get-sharepoint-site-list-item --site-id 'contoso.sharepoint.com,1234,5678' --list-id 'Tasks' --list-item-id '7'",
|
|
517
|
+
"responseShape": "single Microsoft Graph `listItem` resource"
|
|
518
|
+
},
|
|
519
|
+
{
|
|
520
|
+
"name": "get-specific-calendar-event",
|
|
521
|
+
"summary": "Fetch a single calendar event by ID from a specific (non-default) calendar.",
|
|
522
|
+
"category": "calendar",
|
|
523
|
+
"graphMethod": "GET",
|
|
524
|
+
"graphPathTemplate": "/me/calendars/{calendar-id}/events/{event-id}",
|
|
525
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/event-get",
|
|
526
|
+
"options": [
|
|
527
|
+
{
|
|
528
|
+
"name": "calendar-id",
|
|
529
|
+
"key": "calendarId",
|
|
530
|
+
"required": true,
|
|
531
|
+
"description": "Calendar ID. Returned by `ask-marcel list-calendars`."
|
|
532
|
+
},
|
|
533
|
+
{
|
|
534
|
+
"name": "event-id",
|
|
535
|
+
"key": "eventId",
|
|
536
|
+
"required": true,
|
|
537
|
+
"description": "Event ID. Returned by `ask-marcel list-specific-calendar-events`."
|
|
538
|
+
}
|
|
539
|
+
],
|
|
540
|
+
"example": "ask-marcel get-specific-calendar-event --calendar-id 'AAMkAGI2THVS...' --event-id 'AAMkABC...'",
|
|
541
|
+
"responseShape": "single Microsoft Graph `event` resource"
|
|
542
|
+
},
|
|
543
|
+
{
|
|
544
|
+
"name": "get-specific-calendar-view",
|
|
545
|
+
"summary": "List the events in a specific (non-default) calendar with recurrence expanded into individual occurrences in a date range. Both ISO date-time params are required by Graph.",
|
|
546
|
+
"category": "calendar",
|
|
547
|
+
"graphMethod": "GET",
|
|
548
|
+
"graphPathTemplate": "/me/calendars/{calendar-id}/calendarView?startDateTime={start-date-time}&endDateTime={end-date-time}",
|
|
549
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/calendar-list-calendarview",
|
|
550
|
+
"options": [
|
|
551
|
+
{
|
|
552
|
+
"name": "calendar-id",
|
|
553
|
+
"key": "calendarId",
|
|
554
|
+
"required": true,
|
|
555
|
+
"description": "Calendar ID. Returned by `ask-marcel list-calendars`."
|
|
556
|
+
},
|
|
557
|
+
{
|
|
558
|
+
"name": "start-date-time",
|
|
559
|
+
"key": "startDateTime",
|
|
560
|
+
"required": true,
|
|
561
|
+
"description": "ISO 8601 lower bound (UTC). Example: `2026-04-01T00:00:00Z`. Required by Graph; the request fails without it."
|
|
562
|
+
},
|
|
563
|
+
{
|
|
564
|
+
"name": "end-date-time",
|
|
565
|
+
"key": "endDateTime",
|
|
566
|
+
"required": true,
|
|
567
|
+
"description": "ISO 8601 upper bound (UTC). Example: `2026-05-01T00:00:00Z`. Required by Graph; the request fails without it."
|
|
568
|
+
}
|
|
569
|
+
],
|
|
570
|
+
"example": "ask-marcel get-specific-calendar-view --calendar-id 'AAMkAGI2THVS...' --start-date-time '2026-04-01T00:00:00Z' --end-date-time '2026-05-01T00:00:00Z'",
|
|
571
|
+
"responseShape": "collection of Microsoft Graph `event` resources (single occurrences) under `value[]`"
|
|
572
|
+
},
|
|
573
|
+
{
|
|
574
|
+
"name": "get-team",
|
|
575
|
+
"summary": "Get the metadata of a single Microsoft Team (display name, settings, member-settings, owner group).",
|
|
576
|
+
"category": "teams",
|
|
577
|
+
"graphMethod": "GET",
|
|
578
|
+
"graphPathTemplate": "/teams/{team-id}",
|
|
579
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/team-get",
|
|
580
|
+
"options": [
|
|
581
|
+
{
|
|
582
|
+
"name": "team-id",
|
|
583
|
+
"key": "teamId",
|
|
584
|
+
"required": true,
|
|
585
|
+
"description": "Microsoft Teams team ID. Returned by `ask-marcel list-joined-teams`."
|
|
586
|
+
}
|
|
587
|
+
],
|
|
588
|
+
"example": "ask-marcel get-team --team-id 'abc-1234-...'",
|
|
589
|
+
"responseShape": "single Microsoft Graph `team` resource"
|
|
590
|
+
},
|
|
591
|
+
{
|
|
592
|
+
"name": "get-team-channel",
|
|
593
|
+
"summary": "Get the metadata of a single channel inside a Microsoft Team.",
|
|
594
|
+
"category": "teams",
|
|
595
|
+
"graphMethod": "GET",
|
|
596
|
+
"graphPathTemplate": "/teams/{team-id}/channels/{channel-id}",
|
|
597
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/channel-get",
|
|
598
|
+
"options": [
|
|
599
|
+
{
|
|
600
|
+
"name": "team-id",
|
|
601
|
+
"key": "teamId",
|
|
602
|
+
"required": true,
|
|
603
|
+
"description": "Microsoft Teams team ID. Returned by `ask-marcel list-joined-teams`."
|
|
604
|
+
},
|
|
605
|
+
{
|
|
606
|
+
"name": "channel-id",
|
|
607
|
+
"key": "channelId",
|
|
608
|
+
"required": true,
|
|
609
|
+
"description": "Channel ID. Returned by `ask-marcel list-team-channels`."
|
|
610
|
+
}
|
|
611
|
+
],
|
|
612
|
+
"example": "ask-marcel get-team-channel --team-id 'abc-1234-...' --channel-id '19:def@thread.tacv2'",
|
|
613
|
+
"responseShape": "single Microsoft Graph `channel` resource"
|
|
614
|
+
},
|
|
615
|
+
{
|
|
616
|
+
"name": "get-todo-task",
|
|
617
|
+
"summary": "Get a single Microsoft To Do task by its ID and its parent list ID.",
|
|
618
|
+
"category": "tasks",
|
|
619
|
+
"graphMethod": "GET",
|
|
620
|
+
"graphPathTemplate": "/me/todo/lists/{todo-task-list-id}/tasks/{todo-task-id}",
|
|
621
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/todotask-get",
|
|
622
|
+
"options": [
|
|
623
|
+
{
|
|
624
|
+
"name": "todo-task-list-id",
|
|
625
|
+
"key": "todoTaskListId",
|
|
626
|
+
"required": true,
|
|
627
|
+
"description": "To Do task list ID. Returned by `ask-marcel list-todo-task-lists`."
|
|
628
|
+
},
|
|
629
|
+
{
|
|
630
|
+
"name": "todo-task-id",
|
|
631
|
+
"key": "todoTaskId",
|
|
632
|
+
"required": true,
|
|
633
|
+
"description": "To Do task ID. Returned by `ask-marcel list-todo-tasks`."
|
|
634
|
+
}
|
|
635
|
+
],
|
|
636
|
+
"example": "ask-marcel get-todo-task --todo-task-list-id 'AAMkAGI...' --todo-task-id 'AAMkABC...'",
|
|
637
|
+
"responseShape": "single Microsoft Graph `todoTask` resource"
|
|
638
|
+
},
|
|
639
|
+
{
|
|
640
|
+
"name": "list-all-onenote-sections",
|
|
641
|
+
"summary": "List every OneNote section the signed-in user can see, across all notebooks.",
|
|
642
|
+
"category": "notes",
|
|
643
|
+
"graphMethod": "GET",
|
|
644
|
+
"graphPathTemplate": "/me/onenote/sections",
|
|
645
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/onenote-list-sections",
|
|
646
|
+
"options": [],
|
|
647
|
+
"example": "ask-marcel list-all-onenote-sections",
|
|
648
|
+
"responseShape": "collection of Microsoft Graph `onenoteSection` resources under `value[]`"
|
|
649
|
+
},
|
|
650
|
+
{
|
|
651
|
+
"name": "list-calendar-event-instances",
|
|
652
|
+
"summary": "List the individual occurrences of a recurring calendar event over a date range. Both ISO date-time params are required by Graph.",
|
|
653
|
+
"category": "calendar",
|
|
654
|
+
"graphMethod": "GET",
|
|
655
|
+
"graphPathTemplate": "/me/calendars/{calendar-id}/events/{event-id}/instances?startDateTime={start-date-time}&endDateTime={end-date-time}",
|
|
656
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/event-list-instances",
|
|
657
|
+
"options": [
|
|
658
|
+
{
|
|
659
|
+
"name": "calendar-id",
|
|
660
|
+
"key": "calendarId",
|
|
661
|
+
"required": true,
|
|
662
|
+
"description": "Calendar ID. Returned by `ask-marcel list-calendars`."
|
|
663
|
+
},
|
|
664
|
+
{
|
|
665
|
+
"name": "event-id",
|
|
666
|
+
"key": "eventId",
|
|
667
|
+
"required": true,
|
|
668
|
+
"description": "Recurring event ID. Returned by `ask-marcel list-specific-calendar-events`."
|
|
669
|
+
},
|
|
670
|
+
{
|
|
671
|
+
"name": "start-date-time",
|
|
672
|
+
"key": "startDateTime",
|
|
673
|
+
"required": true,
|
|
674
|
+
"description": "ISO 8601 lower bound (UTC). Example: `2026-04-01T00:00:00Z`. Required by Graph; the request fails without it."
|
|
675
|
+
},
|
|
676
|
+
{
|
|
677
|
+
"name": "end-date-time",
|
|
678
|
+
"key": "endDateTime",
|
|
679
|
+
"required": true,
|
|
680
|
+
"description": "ISO 8601 upper bound (UTC). Example: `2026-05-01T00:00:00Z`. Required by Graph; the request fails without it."
|
|
681
|
+
}
|
|
682
|
+
],
|
|
683
|
+
"example": "ask-marcel list-calendar-event-instances --calendar-id 'AAMkAGI2THVS...' --event-id 'AAMkABC...' --start-date-time '2026-04-01T00:00:00Z' --end-date-time '2026-05-01T00:00:00Z'",
|
|
684
|
+
"responseShape": "collection of Microsoft Graph `event` resources (single occurrences) under `value[]`"
|
|
685
|
+
},
|
|
686
|
+
{
|
|
687
|
+
"name": "list-calendar-events",
|
|
688
|
+
"summary": "List the events in the signed-in user’s default calendar (does not expand recurrences).",
|
|
689
|
+
"category": "calendar",
|
|
690
|
+
"graphMethod": "GET",
|
|
691
|
+
"graphPathTemplate": "/me/events",
|
|
692
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/user-list-events",
|
|
693
|
+
"options": [],
|
|
694
|
+
"example": "ask-marcel list-calendar-events",
|
|
695
|
+
"responseShape": "collection of Microsoft Graph `event` resources under `value[]`"
|
|
696
|
+
},
|
|
697
|
+
{
|
|
698
|
+
"name": "list-calendar-events-delta",
|
|
699
|
+
"summary": "Get the incremental change set (added / modified / deleted events) for the signed-in user’s default calendar. Use the `@odata.deltaLink` from a previous response to resume.",
|
|
700
|
+
"category": "calendar",
|
|
701
|
+
"graphMethod": "GET",
|
|
702
|
+
"graphPathTemplate": "/me/events/delta()",
|
|
703
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/event-delta",
|
|
704
|
+
"options": [],
|
|
705
|
+
"example": "ask-marcel list-calendar-events-delta",
|
|
706
|
+
"responseShape": "collection of changed Microsoft Graph `event` resources under `value[]` plus an `@odata.deltaLink` token"
|
|
707
|
+
},
|
|
708
|
+
{
|
|
709
|
+
"name": "list-calendar-view-delta",
|
|
710
|
+
"summary": "Get the first page of the incremental change set of expanded calendar-view occurrences over a date range. Subsequent pages: feed the returned `@odata.nextLink` to `next-page`; resume later via the `@odata.deltaLink`.",
|
|
711
|
+
"category": "calendar",
|
|
712
|
+
"graphMethod": "GET",
|
|
713
|
+
"graphPathTemplate": "/me/calendarView/delta()?startDateTime={start-date-time}&endDateTime={end-date-time}",
|
|
714
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/event-delta",
|
|
715
|
+
"options": [
|
|
716
|
+
{
|
|
717
|
+
"name": "start-date-time",
|
|
718
|
+
"key": "startDateTime",
|
|
719
|
+
"required": true,
|
|
720
|
+
"description": "ISO 8601 lower bound (UTC). Required on the first call only — the deltaLink token encodes it for resumes."
|
|
721
|
+
},
|
|
722
|
+
{
|
|
723
|
+
"name": "end-date-time",
|
|
724
|
+
"key": "endDateTime",
|
|
725
|
+
"required": true,
|
|
726
|
+
"description": "ISO 8601 upper bound (UTC). Required on the first call only — the deltaLink token encodes it for resumes."
|
|
727
|
+
}
|
|
728
|
+
],
|
|
729
|
+
"example": "ask-marcel list-calendar-view-delta --start-date-time '2026-04-01T00:00:00Z' --end-date-time '2026-05-01T00:00:00Z'",
|
|
730
|
+
"responseShape": "collection of changed Microsoft Graph `event` occurrences under `value[]` plus an `@odata.deltaLink` token"
|
|
731
|
+
},
|
|
732
|
+
{
|
|
733
|
+
"name": "list-calendars",
|
|
734
|
+
"summary": "List the calendars in the signed-in user’s mailbox (default + secondary calendars + shared calendars).",
|
|
735
|
+
"category": "calendar",
|
|
736
|
+
"graphMethod": "GET",
|
|
737
|
+
"graphPathTemplate": "/me/calendars",
|
|
738
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/user-list-calendars",
|
|
739
|
+
"options": [],
|
|
740
|
+
"example": "ask-marcel list-calendars",
|
|
741
|
+
"responseShape": "collection of Microsoft Graph `calendar` resources under `value[]`"
|
|
742
|
+
},
|
|
743
|
+
{
|
|
744
|
+
"name": "list-chat-members",
|
|
745
|
+
"summary": "List the members of a single Microsoft Teams chat.",
|
|
746
|
+
"category": "chats",
|
|
747
|
+
"graphMethod": "GET",
|
|
748
|
+
"graphPathTemplate": "/chats/{chat-id}/members",
|
|
749
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/chat-list-members",
|
|
750
|
+
"options": [
|
|
751
|
+
{
|
|
752
|
+
"name": "chat-id",
|
|
753
|
+
"key": "chatId",
|
|
754
|
+
"required": true,
|
|
755
|
+
"description": "Microsoft Teams chat ID, e.g. `19:abc...@thread.v2`. This CLI does not list chats (the Teams web client token has no `Chat.Read*` scope), so the chat ID has to come from outside. Easiest source from inside this CLI: pick any Teams meeting from `list-calendar-events` and URL-decode the `19%3ameeting_...%40thread.v2` segment of its `onlineMeeting.joinUrl`. Other sources: the Teams desktop / web client (Open in browser → URL contains the chat thread ID), Microsoft Graph Explorer, or Power Automate."
|
|
756
|
+
}
|
|
757
|
+
],
|
|
758
|
+
"example": "ask-marcel list-chat-members --chat-id '19:abc...@thread.v2'",
|
|
759
|
+
"responseShape": "collection of Microsoft Graph `conversationMember` resources under `value[]`"
|
|
760
|
+
},
|
|
761
|
+
{
|
|
762
|
+
"name": "list-drive-item-permissions",
|
|
763
|
+
"summary": "List the sharing permissions on a OneDrive / SharePoint file or folder.",
|
|
764
|
+
"category": "drive",
|
|
765
|
+
"graphMethod": "GET",
|
|
766
|
+
"graphPathTemplate": "/drives/{drive-id}/items/{item-id}/permissions",
|
|
767
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/driveitem-list-permissions",
|
|
768
|
+
"options": [
|
|
769
|
+
{
|
|
770
|
+
"name": "drive-id",
|
|
771
|
+
"key": "driveId",
|
|
772
|
+
"required": true,
|
|
773
|
+
"description": "Microsoft Graph drive ID. Returned by `ask-marcel list-drives`."
|
|
774
|
+
},
|
|
775
|
+
{
|
|
776
|
+
"name": "item-id",
|
|
777
|
+
"key": "itemId",
|
|
778
|
+
"required": true,
|
|
779
|
+
"description": "driveItem ID of the file or folder. Returned by `list-folder-files`, `search-onedrive-files`, or `get-drive-item`."
|
|
780
|
+
}
|
|
781
|
+
],
|
|
782
|
+
"example": "ask-marcel list-drive-item-permissions --drive-id 'b!1234' --item-id '01ABC'",
|
|
783
|
+
"responseShape": "collection of Microsoft Graph `permission` resources under `value[]`"
|
|
784
|
+
},
|
|
785
|
+
{
|
|
786
|
+
"name": "list-drive-item-versions",
|
|
787
|
+
"summary": "List the historical versions of a OneDrive / SharePoint file (each save creates a new version).",
|
|
788
|
+
"category": "drive",
|
|
789
|
+
"graphMethod": "GET",
|
|
790
|
+
"graphPathTemplate": "/drives/{drive-id}/items/{item-id}/versions",
|
|
791
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/driveitem-list-versions",
|
|
792
|
+
"options": [
|
|
793
|
+
{
|
|
794
|
+
"name": "drive-id",
|
|
795
|
+
"key": "driveId",
|
|
796
|
+
"required": true,
|
|
797
|
+
"description": "Microsoft Graph drive ID. Use `ask-marcel list-drives` for the personal OneDrive, or `ask-marcel list-sharepoint-site-drives --site-id <id>` for a SharePoint document library."
|
|
798
|
+
},
|
|
799
|
+
{
|
|
800
|
+
"name": "item-id",
|
|
801
|
+
"key": "itemId",
|
|
802
|
+
"required": true,
|
|
803
|
+
"description": "driveItem ID of the file. Returned by `list-folder-files` or `search-onedrive-files`."
|
|
804
|
+
}
|
|
805
|
+
],
|
|
806
|
+
"example": "ask-marcel list-drive-item-versions --drive-id 'b!1234' --item-id '01ABC'",
|
|
807
|
+
"responseShape": "collection of Microsoft Graph `driveItemVersion` resources under `value[]`"
|
|
808
|
+
},
|
|
809
|
+
{
|
|
810
|
+
"name": "list-drives",
|
|
811
|
+
"summary": "List all OneDrive / SharePoint drives the signed-in user has access to.",
|
|
812
|
+
"category": "drive",
|
|
813
|
+
"graphMethod": "GET",
|
|
814
|
+
"graphPathTemplate": "/me/drives",
|
|
815
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/drive-list",
|
|
816
|
+
"options": [],
|
|
817
|
+
"example": "ask-marcel list-drives",
|
|
818
|
+
"responseShape": "collection of Microsoft Graph `drive` resources under `value[]`"
|
|
819
|
+
},
|
|
820
|
+
{
|
|
821
|
+
"name": "list-excel-table-rows",
|
|
822
|
+
"summary": "List the data rows of a named Excel table (excluding the header row).",
|
|
823
|
+
"category": "excel",
|
|
824
|
+
"graphMethod": "GET",
|
|
825
|
+
"graphPathTemplate": "/drives/{drive-id}/items/{item-id}/workbook/tables/{table-id}/rows",
|
|
826
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/workbooktable-list-rows",
|
|
827
|
+
"options": [
|
|
828
|
+
{
|
|
829
|
+
"name": "drive-id",
|
|
830
|
+
"key": "driveId",
|
|
831
|
+
"required": true,
|
|
832
|
+
"description": "Microsoft Graph drive ID containing the workbook. Returned by `ask-marcel list-drives`."
|
|
833
|
+
},
|
|
834
|
+
{
|
|
835
|
+
"name": "item-id",
|
|
836
|
+
"key": "itemId",
|
|
837
|
+
"required": true,
|
|
838
|
+
"description": "driveItem ID of the .xlsx file."
|
|
839
|
+
},
|
|
840
|
+
{
|
|
841
|
+
"name": "table-id",
|
|
842
|
+
"key": "tableId",
|
|
843
|
+
"required": true,
|
|
844
|
+
"description": "Workbook table ID or table name. Returned by `ask-marcel list-excel-tables`."
|
|
845
|
+
}
|
|
846
|
+
],
|
|
847
|
+
"example": "ask-marcel list-excel-table-rows --drive-id 'b!1234' --item-id '01XLSX' --table-id 'Table1'",
|
|
848
|
+
"responseShape": "collection of Microsoft Graph `workbookTableRow` resources (each `values` is a 2D array) under `value[]`"
|
|
849
|
+
},
|
|
850
|
+
{
|
|
851
|
+
"name": "list-excel-tables",
|
|
852
|
+
"summary": "List the named tables across every worksheet in an Excel workbook.",
|
|
853
|
+
"category": "excel",
|
|
854
|
+
"graphMethod": "GET",
|
|
855
|
+
"graphPathTemplate": "/drives/{drive-id}/items/{item-id}/workbook/tables",
|
|
856
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/workbook-list-tables",
|
|
857
|
+
"options": [
|
|
858
|
+
{
|
|
859
|
+
"name": "drive-id",
|
|
860
|
+
"key": "driveId",
|
|
861
|
+
"required": true,
|
|
862
|
+
"description": "Microsoft Graph drive ID containing the workbook. Returned by `ask-marcel list-drives`."
|
|
863
|
+
},
|
|
864
|
+
{
|
|
865
|
+
"name": "item-id",
|
|
866
|
+
"key": "itemId",
|
|
867
|
+
"required": true,
|
|
868
|
+
"description": "driveItem ID of the .xlsx file. Returned by `list-folder-files` or `search-onedrive-files`."
|
|
869
|
+
}
|
|
870
|
+
],
|
|
871
|
+
"example": "ask-marcel list-excel-tables --drive-id 'b!1234' --item-id '01XLSX'",
|
|
872
|
+
"responseShape": "collection of Microsoft Graph `workbookTable` resources under `value[]`"
|
|
873
|
+
},
|
|
874
|
+
{
|
|
875
|
+
"name": "list-excel-worksheets",
|
|
876
|
+
"summary": "List the worksheets (tabs) inside an Excel workbook stored in OneDrive / SharePoint.",
|
|
877
|
+
"category": "excel",
|
|
878
|
+
"graphMethod": "GET",
|
|
879
|
+
"graphPathTemplate": "/drives/{drive-id}/items/{item-id}/workbook/worksheets",
|
|
880
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/workbook-list-worksheets",
|
|
881
|
+
"options": [
|
|
882
|
+
{
|
|
883
|
+
"name": "drive-id",
|
|
884
|
+
"key": "driveId",
|
|
885
|
+
"required": true,
|
|
886
|
+
"description": "Microsoft Graph drive ID containing the workbook. Returned by `ask-marcel list-drives`."
|
|
887
|
+
},
|
|
888
|
+
{
|
|
889
|
+
"name": "item-id",
|
|
890
|
+
"key": "itemId",
|
|
891
|
+
"required": true,
|
|
892
|
+
"description": "driveItem ID of the .xlsx file. Returned by `list-folder-files` or `search-onedrive-files`."
|
|
893
|
+
}
|
|
894
|
+
],
|
|
895
|
+
"example": "ask-marcel list-excel-worksheets --drive-id 'b!1234' --item-id '01XLSX'",
|
|
896
|
+
"responseShape": "collection of Microsoft Graph `worksheet` resources under `value[]`"
|
|
897
|
+
},
|
|
898
|
+
{
|
|
899
|
+
"name": "list-folder-files",
|
|
900
|
+
"summary": "List the children (files and subfolders) of a folder in OneDrive / SharePoint.",
|
|
901
|
+
"category": "drive",
|
|
902
|
+
"graphMethod": "GET",
|
|
903
|
+
"graphPathTemplate": "/drives/{drive-id}/items/{item-id}/children",
|
|
904
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/driveitem-list-children",
|
|
905
|
+
"options": [
|
|
906
|
+
{
|
|
907
|
+
"name": "drive-id",
|
|
908
|
+
"key": "driveId",
|
|
909
|
+
"required": true,
|
|
910
|
+
"description": "Microsoft Graph drive ID. Returned by `ask-marcel list-drives`."
|
|
911
|
+
},
|
|
912
|
+
{
|
|
913
|
+
"name": "item-id",
|
|
914
|
+
"key": "itemId",
|
|
915
|
+
"required": true,
|
|
916
|
+
"description": "driveItem ID of the folder. Use the root folder ID from `ask-marcel get-drive-root-item` to list the top of a drive."
|
|
917
|
+
}
|
|
918
|
+
],
|
|
919
|
+
"example": "ask-marcel list-folder-files --drive-id 'b!1234' --item-id '01ROOT'",
|
|
920
|
+
"responseShape": "collection of Microsoft Graph `driveItem` resources under `value[]`"
|
|
921
|
+
},
|
|
922
|
+
{
|
|
923
|
+
"name": "list-incomplete-planner-tasks",
|
|
924
|
+
"summary": "List every incomplete Microsoft Planner task assigned to or owned by the signed-in user, across every plan.",
|
|
925
|
+
"category": "tasks",
|
|
926
|
+
"graphMethod": "GET",
|
|
927
|
+
"graphPathTemplate": "/me/planner/tasks?$filter=percentComplete ne 100",
|
|
928
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/planneruser-list-tasks",
|
|
929
|
+
"options": [],
|
|
930
|
+
"example": "ask-marcel list-incomplete-planner-tasks",
|
|
931
|
+
"responseShape": "collection of Microsoft Graph `plannerTask` resources under `value[]` where `percentComplete < 100`"
|
|
932
|
+
},
|
|
933
|
+
{
|
|
934
|
+
"name": "list-incomplete-todo-tasks",
|
|
935
|
+
"summary": "List every incomplete Microsoft To Do task in a given list (status not equal to `completed`).",
|
|
936
|
+
"category": "tasks",
|
|
937
|
+
"graphMethod": "GET",
|
|
938
|
+
"graphPathTemplate": "/me/todo/lists/{todo-task-list-id}/tasks?$filter=status ne 'completed'",
|
|
939
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/todotasklist-list-tasks",
|
|
940
|
+
"options": [
|
|
941
|
+
{
|
|
942
|
+
"name": "todo-task-list-id",
|
|
943
|
+
"key": "todoTaskListId",
|
|
944
|
+
"required": true,
|
|
945
|
+
"description": "todoTaskList ID. Returned by `ask-marcel list-todo-task-lists`. Well-known names also work, e.g. `tasks` for the default list. There is no Graph endpoint that returns incomplete tasks across every list — call this once per list."
|
|
946
|
+
}
|
|
947
|
+
],
|
|
948
|
+
"example": "ask-marcel list-incomplete-todo-tasks --todo-task-list-id 'tasks'",
|
|
949
|
+
"responseShape": "collection of Microsoft Graph `todoTask` resources under `value[]` where `status != \"completed\"`"
|
|
950
|
+
},
|
|
951
|
+
{
|
|
952
|
+
"name": "list-joined-teams",
|
|
953
|
+
"summary": "List the Microsoft Teams the signed-in user is a member of.",
|
|
954
|
+
"category": "teams",
|
|
955
|
+
"graphMethod": "GET",
|
|
956
|
+
"graphPathTemplate": "/me/joinedTeams",
|
|
957
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/user-list-joinedteams",
|
|
958
|
+
"options": [],
|
|
959
|
+
"example": "ask-marcel list-joined-teams",
|
|
960
|
+
"responseShape": "collection of Microsoft Graph `team` resources under `value[]`"
|
|
961
|
+
},
|
|
962
|
+
{
|
|
963
|
+
"name": "list-mail-attachments",
|
|
964
|
+
"summary": "List the attachments (file, item, reference) on a single Outlook message.",
|
|
965
|
+
"category": "mail",
|
|
966
|
+
"graphMethod": "GET",
|
|
967
|
+
"graphPathTemplate": "/me/messages/{message-id}/attachments",
|
|
968
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/message-list-attachments",
|
|
969
|
+
"options": [
|
|
970
|
+
{
|
|
971
|
+
"name": "message-id",
|
|
972
|
+
"key": "messageId",
|
|
973
|
+
"required": true,
|
|
974
|
+
"description": "Outlook message ID. Returned by `ask-marcel list-mail-messages` or `list-mail-folder-messages`."
|
|
975
|
+
}
|
|
976
|
+
],
|
|
977
|
+
"example": "ask-marcel list-mail-attachments --message-id 'AAMkAGI2...'",
|
|
978
|
+
"responseShape": "collection of Microsoft Graph `attachment` resources under `value[]`"
|
|
979
|
+
},
|
|
980
|
+
{
|
|
981
|
+
"name": "list-mail-child-folders",
|
|
982
|
+
"summary": "List the subfolders of a single Outlook mail folder (e.g. subfolders of Inbox).",
|
|
983
|
+
"category": "mail",
|
|
984
|
+
"graphMethod": "GET",
|
|
985
|
+
"graphPathTemplate": "/me/mailFolders/{mail-folder-id}/childFolders",
|
|
986
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/mailfolder-list-childfolders",
|
|
987
|
+
"options": [
|
|
988
|
+
{
|
|
989
|
+
"name": "mail-folder-id",
|
|
990
|
+
"key": "mailFolderId",
|
|
991
|
+
"required": true,
|
|
992
|
+
"description": "mailFolder ID. Returned by `ask-marcel list-mail-folders`. Well-known names also work, e.g. `inbox`, `sentitems`, `drafts`."
|
|
993
|
+
}
|
|
994
|
+
],
|
|
995
|
+
"example": "ask-marcel list-mail-child-folders --mail-folder-id 'inbox'",
|
|
996
|
+
"responseShape": "collection of Microsoft Graph `mailFolder` resources under `value[]`"
|
|
997
|
+
},
|
|
998
|
+
{
|
|
999
|
+
"name": "list-mail-folder-messages",
|
|
1000
|
+
"summary": "List the messages inside a specific Outlook mail folder (Inbox, custom folder, etc.).",
|
|
1001
|
+
"category": "mail",
|
|
1002
|
+
"graphMethod": "GET",
|
|
1003
|
+
"graphPathTemplate": "/me/mailFolders/{mail-folder-id}/messages",
|
|
1004
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/mailfolder-list-messages",
|
|
1005
|
+
"options": [
|
|
1006
|
+
{
|
|
1007
|
+
"name": "mail-folder-id",
|
|
1008
|
+
"key": "mailFolderId",
|
|
1009
|
+
"required": true,
|
|
1010
|
+
"description": "mailFolder ID. Returned by `ask-marcel list-mail-folders`. Well-known names also work, e.g. `inbox`, `sentitems`, `drafts`."
|
|
1011
|
+
}
|
|
1012
|
+
],
|
|
1013
|
+
"example": "ask-marcel list-mail-folder-messages --mail-folder-id 'inbox'",
|
|
1014
|
+
"responseShape": "collection of Microsoft Graph `message` resources under `value[]`"
|
|
1015
|
+
},
|
|
1016
|
+
{
|
|
1017
|
+
"name": "list-mail-folders",
|
|
1018
|
+
"summary": "List the top-level mail folders in the signed-in user’s Outlook mailbox (Inbox, Sent Items, etc.).",
|
|
1019
|
+
"category": "mail",
|
|
1020
|
+
"graphMethod": "GET",
|
|
1021
|
+
"graphPathTemplate": "/me/mailFolders",
|
|
1022
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/user-list-mailfolders",
|
|
1023
|
+
"options": [],
|
|
1024
|
+
"example": "ask-marcel list-mail-folders",
|
|
1025
|
+
"responseShape": "collection of Microsoft Graph `mailFolder` resources under `value[]`"
|
|
1026
|
+
},
|
|
1027
|
+
{
|
|
1028
|
+
"name": "list-mail-messages",
|
|
1029
|
+
"summary": "List the most recent messages from across the signed-in user’s entire Outlook mailbox (every folder including Sent, Archive, Junk; default sort `receivedDateTime` desc). Use `list-mail-folder-messages` to scope to a single folder such as Inbox.",
|
|
1030
|
+
"category": "mail",
|
|
1031
|
+
"graphMethod": "GET",
|
|
1032
|
+
"graphPathTemplate": "/me/messages",
|
|
1033
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/user-list-messages",
|
|
1034
|
+
"options": [],
|
|
1035
|
+
"example": "ask-marcel list-mail-messages",
|
|
1036
|
+
"responseShape": "collection of Microsoft Graph `message` resources under `value[]`"
|
|
1037
|
+
},
|
|
1038
|
+
{
|
|
1039
|
+
"name": "list-mail-rules",
|
|
1040
|
+
"summary": "List the inbox / folder rules attached to a single Outlook mail folder.",
|
|
1041
|
+
"category": "mail",
|
|
1042
|
+
"graphMethod": "GET",
|
|
1043
|
+
"graphPathTemplate": "/me/mailFolders/{mail-folder-id}/messageRules",
|
|
1044
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/mailfolder-list-messagerules",
|
|
1045
|
+
"options": [
|
|
1046
|
+
{
|
|
1047
|
+
"name": "mail-folder-id",
|
|
1048
|
+
"key": "mailFolderId",
|
|
1049
|
+
"required": true,
|
|
1050
|
+
"description": "mailFolder ID. Returned by `ask-marcel list-mail-folders`. Well-known names also work, e.g. `inbox`."
|
|
1051
|
+
}
|
|
1052
|
+
],
|
|
1053
|
+
"example": "ask-marcel list-mail-rules --mail-folder-id 'inbox'",
|
|
1054
|
+
"responseShape": "collection of Microsoft Graph `messageRule` resources under `value[]`"
|
|
1055
|
+
},
|
|
1056
|
+
{
|
|
1057
|
+
"name": "list-onenote-notebook-sections",
|
|
1058
|
+
"summary": "List the top-level sections of a single OneNote notebook (flat — does NOT recurse into section groups; use `list-all-onenote-sections` to flatten every notebook the user has access to).",
|
|
1059
|
+
"category": "notes",
|
|
1060
|
+
"graphMethod": "GET",
|
|
1061
|
+
"graphPathTemplate": "/me/onenote/notebooks/{notebook-id}/sections",
|
|
1062
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/notebook-list-sections",
|
|
1063
|
+
"options": [
|
|
1064
|
+
{
|
|
1065
|
+
"name": "notebook-id",
|
|
1066
|
+
"key": "notebookId",
|
|
1067
|
+
"required": true,
|
|
1068
|
+
"description": "OneNote notebook ID. Returned by `ask-marcel list-onenote-notebooks`."
|
|
1069
|
+
}
|
|
1070
|
+
],
|
|
1071
|
+
"example": "ask-marcel list-onenote-notebook-sections --notebook-id '1-12abc...'",
|
|
1072
|
+
"responseShape": "collection of Microsoft Graph `onenoteSection` resources under `value[]`"
|
|
1073
|
+
},
|
|
1074
|
+
{
|
|
1075
|
+
"name": "list-onenote-notebooks",
|
|
1076
|
+
"summary": "List the OneNote notebooks the signed-in user owns or has access to (sorted by `createdDateTime` desc by Graph; soft-deleted notebooks excluded).",
|
|
1077
|
+
"category": "notes",
|
|
1078
|
+
"graphMethod": "GET",
|
|
1079
|
+
"graphPathTemplate": "/me/onenote/notebooks",
|
|
1080
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/onenote-list-notebooks",
|
|
1081
|
+
"options": [],
|
|
1082
|
+
"example": "ask-marcel list-onenote-notebooks",
|
|
1083
|
+
"responseShape": "collection of Microsoft Graph `notebook` resources under `value[]`"
|
|
1084
|
+
},
|
|
1085
|
+
{
|
|
1086
|
+
"name": "list-onenote-section-pages",
|
|
1087
|
+
"summary": "List the pages inside a single OneNote section.",
|
|
1088
|
+
"category": "notes",
|
|
1089
|
+
"graphMethod": "GET",
|
|
1090
|
+
"graphPathTemplate": "/me/onenote/sections/{onenote-section-id}/pages",
|
|
1091
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/section-list-pages",
|
|
1092
|
+
"options": [
|
|
1093
|
+
{
|
|
1094
|
+
"name": "onenote-section-id",
|
|
1095
|
+
"key": "onenoteSectionId",
|
|
1096
|
+
"required": true,
|
|
1097
|
+
"description": "OneNote section ID. Returned by `ask-marcel list-onenote-notebook-sections` or `list-all-onenote-sections`."
|
|
1098
|
+
}
|
|
1099
|
+
],
|
|
1100
|
+
"example": "ask-marcel list-onenote-section-pages --onenote-section-id '1-abc...'",
|
|
1101
|
+
"responseShape": "collection of Microsoft Graph `onenotePage` resources under `value[]`"
|
|
1102
|
+
},
|
|
1103
|
+
{
|
|
1104
|
+
"name": "list-plan-buckets",
|
|
1105
|
+
"summary": "List the buckets (columns / lanes) of a Microsoft Planner plan.",
|
|
1106
|
+
"category": "tasks",
|
|
1107
|
+
"graphMethod": "GET",
|
|
1108
|
+
"graphPathTemplate": "/planner/plans/{planner-plan-id}/buckets",
|
|
1109
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/plannerplan-list-buckets",
|
|
1110
|
+
"options": [
|
|
1111
|
+
{
|
|
1112
|
+
"name": "planner-plan-id",
|
|
1113
|
+
"key": "plannerPlanId",
|
|
1114
|
+
"required": true,
|
|
1115
|
+
"description": "Planner plan ID. Returned in the `planId` field of any task from `ask-marcel list-planner-tasks`."
|
|
1116
|
+
}
|
|
1117
|
+
],
|
|
1118
|
+
"example": "ask-marcel list-plan-buckets --planner-plan-id 'xqQg5FS2LkCp935s-FIFm5gAB6'",
|
|
1119
|
+
"responseShape": "collection of Microsoft Graph `plannerBucket` resources under `value[]`"
|
|
1120
|
+
},
|
|
1121
|
+
{
|
|
1122
|
+
"name": "list-plan-tasks",
|
|
1123
|
+
"summary": "List every task within a Microsoft Planner plan, regardless of completion status (Graph orders by `orderHint`). Use `list-incomplete-planner-tasks` for the across-plans incomplete view.",
|
|
1124
|
+
"category": "tasks",
|
|
1125
|
+
"graphMethod": "GET",
|
|
1126
|
+
"graphPathTemplate": "/planner/plans/{planner-plan-id}/tasks",
|
|
1127
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/plannerplan-list-tasks",
|
|
1128
|
+
"options": [
|
|
1129
|
+
{
|
|
1130
|
+
"name": "planner-plan-id",
|
|
1131
|
+
"key": "plannerPlanId",
|
|
1132
|
+
"required": true,
|
|
1133
|
+
"description": "Planner plan ID. Returned in the `planId` field of any task from `ask-marcel list-planner-tasks`."
|
|
1134
|
+
}
|
|
1135
|
+
],
|
|
1136
|
+
"example": "ask-marcel list-plan-tasks --planner-plan-id 'xqQg5FS2LkCp935s-FIFm5gAB6'",
|
|
1137
|
+
"responseShape": "collection of Microsoft Graph `plannerTask` resources under `value[]`"
|
|
1138
|
+
},
|
|
1139
|
+
{
|
|
1140
|
+
"name": "list-planner-plans",
|
|
1141
|
+
"summary": "List every Microsoft Planner plan the signed-in user has access to (across every group). Use this to discover plan IDs without needing an existing task as the entry point.",
|
|
1142
|
+
"category": "tasks",
|
|
1143
|
+
"graphMethod": "GET",
|
|
1144
|
+
"graphPathTemplate": "/me/planner/plans",
|
|
1145
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/planneruser-list-plans",
|
|
1146
|
+
"options": [],
|
|
1147
|
+
"example": "ask-marcel list-planner-plans",
|
|
1148
|
+
"responseShape": "collection of Microsoft Graph `plannerPlan` resources under `value[]`"
|
|
1149
|
+
},
|
|
1150
|
+
{
|
|
1151
|
+
"name": "list-planner-tasks",
|
|
1152
|
+
"summary": "List every Microsoft Planner task assigned to or owned by the signed-in user, across all plans.",
|
|
1153
|
+
"category": "tasks",
|
|
1154
|
+
"graphMethod": "GET",
|
|
1155
|
+
"graphPathTemplate": "/me/planner/tasks",
|
|
1156
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/planneruser-list-tasks",
|
|
1157
|
+
"options": [],
|
|
1158
|
+
"example": "ask-marcel list-planner-tasks",
|
|
1159
|
+
"responseShape": "collection of Microsoft Graph `plannerTask` resources under `value[]`"
|
|
1160
|
+
},
|
|
1161
|
+
{
|
|
1162
|
+
"name": "list-sharepoint-site-drives",
|
|
1163
|
+
"summary": "List the document libraries (drives) attached to a SharePoint site.",
|
|
1164
|
+
"category": "sharepoint",
|
|
1165
|
+
"graphMethod": "GET",
|
|
1166
|
+
"graphPathTemplate": "/sites/{site-id}/drives",
|
|
1167
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/drive-list",
|
|
1168
|
+
"options": [
|
|
1169
|
+
{
|
|
1170
|
+
"name": "site-id",
|
|
1171
|
+
"key": "siteId",
|
|
1172
|
+
"required": true,
|
|
1173
|
+
"description": "SharePoint site ID. Returned by `ask-marcel search-sharepoint-sites`."
|
|
1174
|
+
}
|
|
1175
|
+
],
|
|
1176
|
+
"example": "ask-marcel list-sharepoint-site-drives --site-id 'contoso.sharepoint.com,1234,5678'",
|
|
1177
|
+
"responseShape": "collection of Microsoft Graph `drive` resources under `value[]`"
|
|
1178
|
+
},
|
|
1179
|
+
{
|
|
1180
|
+
"name": "list-sharepoint-site-list-items",
|
|
1181
|
+
"summary": "List the rows (listItem resources) of a single SharePoint list.",
|
|
1182
|
+
"category": "sharepoint",
|
|
1183
|
+
"graphMethod": "GET",
|
|
1184
|
+
"graphPathTemplate": "/sites/{site-id}/lists/{list-id}/items",
|
|
1185
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/listitem-list",
|
|
1186
|
+
"options": [
|
|
1187
|
+
{
|
|
1188
|
+
"name": "site-id",
|
|
1189
|
+
"key": "siteId",
|
|
1190
|
+
"required": true,
|
|
1191
|
+
"description": "SharePoint site ID. Returned by `ask-marcel search-sharepoint-sites`."
|
|
1192
|
+
},
|
|
1193
|
+
{
|
|
1194
|
+
"name": "list-id",
|
|
1195
|
+
"key": "listId",
|
|
1196
|
+
"required": true,
|
|
1197
|
+
"description": "SharePoint list ID or display name. Returned by `ask-marcel list-sharepoint-site-lists`."
|
|
1198
|
+
}
|
|
1199
|
+
],
|
|
1200
|
+
"example": "ask-marcel list-sharepoint-site-list-items --site-id 'contoso.sharepoint.com,1234,5678' --list-id 'Tasks'",
|
|
1201
|
+
"responseShape": "collection of Microsoft Graph `listItem` resources under `value[]`"
|
|
1202
|
+
},
|
|
1203
|
+
{
|
|
1204
|
+
"name": "list-sharepoint-site-lists",
|
|
1205
|
+
"summary": "List all SharePoint lists (custom + built-in document libraries) on a site.",
|
|
1206
|
+
"category": "sharepoint",
|
|
1207
|
+
"graphMethod": "GET",
|
|
1208
|
+
"graphPathTemplate": "/sites/{site-id}/lists",
|
|
1209
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/list-list",
|
|
1210
|
+
"options": [
|
|
1211
|
+
{
|
|
1212
|
+
"name": "site-id",
|
|
1213
|
+
"key": "siteId",
|
|
1214
|
+
"required": true,
|
|
1215
|
+
"description": "SharePoint site ID. Returned by `ask-marcel search-sharepoint-sites`."
|
|
1216
|
+
}
|
|
1217
|
+
],
|
|
1218
|
+
"example": "ask-marcel list-sharepoint-site-lists --site-id 'contoso.sharepoint.com,1234,5678'",
|
|
1219
|
+
"responseShape": "collection of Microsoft Graph `list` resources under `value[]`"
|
|
1220
|
+
},
|
|
1221
|
+
{
|
|
1222
|
+
"name": "list-specific-calendar-events",
|
|
1223
|
+
"summary": "List the events in a specific (non-default) calendar (does not expand recurrences).",
|
|
1224
|
+
"category": "calendar",
|
|
1225
|
+
"graphMethod": "GET",
|
|
1226
|
+
"graphPathTemplate": "/me/calendars/{calendar-id}/events",
|
|
1227
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/calendar-list-events",
|
|
1228
|
+
"options": [
|
|
1229
|
+
{
|
|
1230
|
+
"name": "calendar-id",
|
|
1231
|
+
"key": "calendarId",
|
|
1232
|
+
"required": true,
|
|
1233
|
+
"description": "Calendar ID. Returned by `ask-marcel list-calendars`."
|
|
1234
|
+
}
|
|
1235
|
+
],
|
|
1236
|
+
"example": "ask-marcel list-specific-calendar-events --calendar-id 'AAMkAGI2THVS...'",
|
|
1237
|
+
"responseShape": "collection of Microsoft Graph `event` resources under `value[]`"
|
|
1238
|
+
},
|
|
1239
|
+
{
|
|
1240
|
+
"name": "list-team-channels",
|
|
1241
|
+
"summary": "List the channels (standard, private, shared) inside a single Microsoft Team.",
|
|
1242
|
+
"category": "teams",
|
|
1243
|
+
"graphMethod": "GET",
|
|
1244
|
+
"graphPathTemplate": "/teams/{team-id}/channels",
|
|
1245
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/channel-list",
|
|
1246
|
+
"options": [
|
|
1247
|
+
{
|
|
1248
|
+
"name": "team-id",
|
|
1249
|
+
"key": "teamId",
|
|
1250
|
+
"required": true,
|
|
1251
|
+
"description": "Microsoft Teams team ID. Returned by `ask-marcel list-joined-teams`."
|
|
1252
|
+
}
|
|
1253
|
+
],
|
|
1254
|
+
"example": "ask-marcel list-team-channels --team-id 'abc-1234-...'",
|
|
1255
|
+
"responseShape": "collection of Microsoft Graph `channel` resources under `value[]`"
|
|
1256
|
+
},
|
|
1257
|
+
{
|
|
1258
|
+
"name": "list-todo-linked-resources",
|
|
1259
|
+
"summary": "List the linked resources (URLs, emails, files) attached to a Microsoft To Do task.",
|
|
1260
|
+
"category": "tasks",
|
|
1261
|
+
"graphMethod": "GET",
|
|
1262
|
+
"graphPathTemplate": "/me/todo/lists/{todo-task-list-id}/tasks/{todo-task-id}/linkedResources",
|
|
1263
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/todotask-list-linkedresources",
|
|
1264
|
+
"options": [
|
|
1265
|
+
{
|
|
1266
|
+
"name": "todo-task-list-id",
|
|
1267
|
+
"key": "todoTaskListId",
|
|
1268
|
+
"required": true,
|
|
1269
|
+
"description": "To Do task list ID. Returned by `ask-marcel list-todo-task-lists`."
|
|
1270
|
+
},
|
|
1271
|
+
{
|
|
1272
|
+
"name": "todo-task-id",
|
|
1273
|
+
"key": "todoTaskId",
|
|
1274
|
+
"required": true,
|
|
1275
|
+
"description": "To Do task ID. Returned by `ask-marcel list-todo-tasks`."
|
|
1276
|
+
}
|
|
1277
|
+
],
|
|
1278
|
+
"example": "ask-marcel list-todo-linked-resources --todo-task-list-id 'AAMkAGI...' --todo-task-id 'AAMkABC...'",
|
|
1279
|
+
"responseShape": "collection of Microsoft Graph `linkedResource` resources under `value[]`"
|
|
1280
|
+
},
|
|
1281
|
+
{
|
|
1282
|
+
"name": "list-todo-task-lists",
|
|
1283
|
+
"summary": "List the signed-in user’s Microsoft To Do task lists (e.g. `Tasks`, `Flagged Emails`, custom lists).",
|
|
1284
|
+
"category": "tasks",
|
|
1285
|
+
"graphMethod": "GET",
|
|
1286
|
+
"graphPathTemplate": "/me/todo/lists",
|
|
1287
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/todo-list-lists",
|
|
1288
|
+
"options": [],
|
|
1289
|
+
"example": "ask-marcel list-todo-task-lists",
|
|
1290
|
+
"responseShape": "collection of Microsoft Graph `todoTaskList` resources under `value[]`"
|
|
1291
|
+
},
|
|
1292
|
+
{
|
|
1293
|
+
"name": "list-todo-tasks",
|
|
1294
|
+
"summary": "List every task in a single Microsoft To Do task list, regardless of completion status. Use `list-incomplete-todo-tasks` if you only want the open ones.",
|
|
1295
|
+
"category": "tasks",
|
|
1296
|
+
"graphMethod": "GET",
|
|
1297
|
+
"graphPathTemplate": "/me/todo/lists/{todo-task-list-id}/tasks",
|
|
1298
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/todotasklist-list-tasks",
|
|
1299
|
+
"options": [
|
|
1300
|
+
{
|
|
1301
|
+
"name": "todo-task-list-id",
|
|
1302
|
+
"key": "todoTaskListId",
|
|
1303
|
+
"required": true,
|
|
1304
|
+
"description": "To Do task list ID. Returned by `ask-marcel list-todo-task-lists`."
|
|
1305
|
+
}
|
|
1306
|
+
],
|
|
1307
|
+
"example": "ask-marcel list-todo-tasks --todo-task-list-id 'AAMkAGI...'",
|
|
1308
|
+
"responseShape": "collection of Microsoft Graph `todoTask` resources under `value[]`"
|
|
1309
|
+
},
|
|
1310
|
+
{
|
|
1311
|
+
"name": "next-page",
|
|
1312
|
+
"summary": "Fetch the next page of a paginated Graph response. Pass the `@odata.nextLink` value returned by any list / search / delta command to walk pagination yourself.",
|
|
1313
|
+
"category": "meta",
|
|
1314
|
+
"graphMethod": "GET",
|
|
1315
|
+
"graphPathTemplate": "{url}",
|
|
1316
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/paging",
|
|
1317
|
+
"options": [
|
|
1318
|
+
{
|
|
1319
|
+
"name": "url",
|
|
1320
|
+
"key": "url",
|
|
1321
|
+
"required": true,
|
|
1322
|
+
"description": "Full Graph v1.0 URL — copy the `@odata.nextLink` field from the previous response. Example: `https://graph.microsoft.com/v1.0/me/messages?$skiptoken=AKDsfg...`. Loop: keep calling until the response no longer contains `@odata.nextLink`. Also handles `@odata.deltaLink` if you want to resume a delta query."
|
|
1323
|
+
}
|
|
1324
|
+
],
|
|
1325
|
+
"example": "ask-marcel next-page --url 'https://graph.microsoft.com/v1.0/me/messages?$skip=10'",
|
|
1326
|
+
"responseShape": "same shape as the originating endpoint (typically `{ value: [...], \"@odata.nextLink\": \"...\" }`)"
|
|
1327
|
+
},
|
|
1328
|
+
{
|
|
1329
|
+
"name": "search-mail-messages",
|
|
1330
|
+
"summary": "Search the signed-in user’s entire Outlook mailbox using KQL or free text. Results are ranked by Graph relevance.",
|
|
1331
|
+
"category": "mail",
|
|
1332
|
+
"graphMethod": "GET",
|
|
1333
|
+
"graphPathTemplate": "/me/messages?$search=\"{query}\"",
|
|
1334
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/user-list-messages",
|
|
1335
|
+
"options": [
|
|
1336
|
+
{
|
|
1337
|
+
"name": "query",
|
|
1338
|
+
"key": "query",
|
|
1339
|
+
"required": true,
|
|
1340
|
+
"description": "KQL or free-text query. Searches subject, body, sender, and recipients. Examples: `Q3 budget`, `from:alice@contoso.com`, `subject:invoice received>=2026-01-01`."
|
|
1341
|
+
}
|
|
1342
|
+
],
|
|
1343
|
+
"example": "ask-marcel search-mail-messages --query 'from:alice subject:Q3'",
|
|
1344
|
+
"responseShape": "collection of Microsoft Graph `message` resources under `value[]`, ranked by relevance"
|
|
1345
|
+
},
|
|
1346
|
+
{
|
|
1347
|
+
"name": "search-my-documents",
|
|
1348
|
+
"summary": "Search the signed-in user’s default OneDrive for documents matching a free-text query (filename, content, metadata).",
|
|
1349
|
+
"category": "drive",
|
|
1350
|
+
"graphMethod": "GET",
|
|
1351
|
+
"graphPathTemplate": "/me/drive/search(q='{query}')",
|
|
1352
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/driveitem-search",
|
|
1353
|
+
"options": [
|
|
1354
|
+
{
|
|
1355
|
+
"name": "query",
|
|
1356
|
+
"key": "query",
|
|
1357
|
+
"required": true,
|
|
1358
|
+
"description": "Free-text search query. Matches filename, content, and metadata across the user’s personal OneDrive. Use `search-onedrive-files --drive-id <id>` instead to target a specific shared SharePoint or OneDrive drive by ID."
|
|
1359
|
+
}
|
|
1360
|
+
],
|
|
1361
|
+
"example": "ask-marcel search-my-documents --query 'q1 budget'",
|
|
1362
|
+
"responseShape": "collection of Microsoft Graph `driveItem` resources under `value[]`"
|
|
1363
|
+
},
|
|
1364
|
+
{
|
|
1365
|
+
"name": "search-onedrive-files",
|
|
1366
|
+
"summary": "Search a single OneDrive / SharePoint drive for files and folders matching a free-text query.",
|
|
1367
|
+
"category": "drive",
|
|
1368
|
+
"graphMethod": "GET",
|
|
1369
|
+
"graphPathTemplate": "/drives/{drive-id}/search(q='{query}')",
|
|
1370
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/driveitem-search",
|
|
1371
|
+
"options": [
|
|
1372
|
+
{
|
|
1373
|
+
"name": "drive-id",
|
|
1374
|
+
"key": "driveId",
|
|
1375
|
+
"required": true,
|
|
1376
|
+
"description": "Microsoft Graph drive ID to search inside. Returned by `ask-marcel list-drives`."
|
|
1377
|
+
},
|
|
1378
|
+
{
|
|
1379
|
+
"name": "query",
|
|
1380
|
+
"key": "query",
|
|
1381
|
+
"required": true,
|
|
1382
|
+
"description": "Free-text search query. Matches filename, content, and metadata."
|
|
1383
|
+
}
|
|
1384
|
+
],
|
|
1385
|
+
"example": "ask-marcel search-onedrive-files --drive-id 'b!1234' --query 'q1 budget'",
|
|
1386
|
+
"responseShape": "collection of Microsoft Graph `driveItem` resources under `value[]`"
|
|
1387
|
+
},
|
|
1388
|
+
{
|
|
1389
|
+
"name": "search-onenote-pages",
|
|
1390
|
+
"summary": "Find OneNote pages whose title contains a substring (case-sensitive — page content is NOT searched). Microsoft removed full-text OneNote `?search=` from v1.0 Graph; only $filter against `title` remains, which is what this command runs.",
|
|
1391
|
+
"category": "notes",
|
|
1392
|
+
"graphMethod": "GET",
|
|
1393
|
+
"graphPathTemplate": "/me/onenote/pages?$filter=contains(title,'{title-substring}')",
|
|
1394
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/onenote-list-pages",
|
|
1395
|
+
"options": [
|
|
1396
|
+
{
|
|
1397
|
+
"name": "title-substring",
|
|
1398
|
+
"key": "titleSubstring",
|
|
1399
|
+
"required": true,
|
|
1400
|
+
"description": "Substring to look for inside OneNote page titles (case-sensitive, exact substring). This is title-only — full-text body search is not available on OneNote pages in v1.0 Graph. Use `list-onenote-section-pages` if you already know the section."
|
|
1401
|
+
}
|
|
1402
|
+
],
|
|
1403
|
+
"example": "ask-marcel search-onenote-pages --title-substring 'meeting notes'",
|
|
1404
|
+
"responseShape": "collection of Microsoft Graph `onenotePage` resources under `value[]` whose title contains the substring"
|
|
1405
|
+
},
|
|
1406
|
+
{
|
|
1407
|
+
"name": "search-sharepoint-sites",
|
|
1408
|
+
"summary": "List the SharePoint sites the signed-in user has access to (returns the followed sites by default).",
|
|
1409
|
+
"category": "sharepoint",
|
|
1410
|
+
"graphMethod": "GET",
|
|
1411
|
+
"graphPathTemplate": "/sites",
|
|
1412
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/site-search",
|
|
1413
|
+
"options": [],
|
|
1414
|
+
"example": "ask-marcel search-sharepoint-sites",
|
|
1415
|
+
"responseShape": "collection of Microsoft Graph `site` resources under `value[]`"
|
|
1416
|
+
},
|
|
1417
|
+
{
|
|
1418
|
+
"name": "search-sharepoint-sites-by-name",
|
|
1419
|
+
"summary": "Search the tenant for SharePoint sites whose display name or description matches a free-text query (returns up to 25).",
|
|
1420
|
+
"category": "sharepoint",
|
|
1421
|
+
"graphMethod": "GET",
|
|
1422
|
+
"graphPathTemplate": "/sites?search={query}",
|
|
1423
|
+
"graphDocsUrl": "https://learn.microsoft.com/en-us/graph/api/site-search",
|
|
1424
|
+
"options": [
|
|
1425
|
+
{
|
|
1426
|
+
"name": "query",
|
|
1427
|
+
"key": "query",
|
|
1428
|
+
"required": true,
|
|
1429
|
+
"description": "Free-text query. Matches site display name and description across the tenant. Use `search-sharepoint-sites` (no query) to instead list the sites the signed-in user follows."
|
|
1430
|
+
}
|
|
1431
|
+
],
|
|
1432
|
+
"example": "ask-marcel search-sharepoint-sites-by-name --query 'marketing'",
|
|
1433
|
+
"responseShape": "collection of Microsoft Graph `site` resources under `value[]` (up to 25)"
|
|
1434
|
+
}
|
|
1435
|
+
]
|
|
1436
|
+
}
|